After having installed the plone CMS from ports and playing with it for a
while, I found out that extensions can only really be added via the so-called
buildout mechanism, which was kind of hard to understand if you don’t use it
in the first place! So I decided to ditch the install via ports, and go for a
buildout in my server jail. The first step was to download the latest unified
installer for the latest stable release (at the time of writing,
Plone-3.3.5-UnifiedInstaller.tgz) from https://www.plone.org.
For reasons mentioned in the following links, I decided to install as root,
and to use the ZEO client/server setup. I did decide to use the
library that is part of the base system, and the
jpeg port that I already
have installed instead of having the installer build separate copies.
The installation was pretty easy;
server# cd tmp server# tar xf Plone-3.3.5-UnifiedInstaller.tgz server# cd Plone-3.3.5-UnifiedInstaller/ server# ./install.sh zeo --libz=no --libjpeg=no Plone successfully installed at /usr/local/Plone See /usr/local/Plone/zeocluster/README.txt for startup instructions Use the account information below to log into the Zope Management Interface The account has full 'Manager' privileges. Username: admin Password: nAjPbZge ...
It is important to note this password. You’ll need it to log in. As per
instructions, I read the
/usr/local/Plone/zeocluster/README.txt file. The
first thing it advised me was to check
/usr/local/Plone/zeocluster/buildout.cfg to see if I wanted to change
anything. Since my server jail runs on a local IP address (192.168.0.100), I
buildout.cfg to change the
zeo-address under the
192.168.0.100:8100. Having read the
documentation, I decided to also add the
Products.CacheSetup egg CacheFu
to make plone faster. These changes made it necessary to run
./bin/buildout, which automatically downloaded any needed components.
The installation process created a
plone user and group on my
system. Since the ZEO server wanted to run under its own user, I added a
zeo user as well. I changed the entries in
that they looked like this:
plone:*:1003:1003::0:0:Plone Admin:/var/empty:/usr/sbin/nologin zeo:*:1004:1004::0:0:Zeo Server:/var/empty:/usr/sbin/nologin
(As always on FreeBSD after making changes to
/etc/master.password, it is
necessary to run the command
pwd_mkdb -p /etc/master.passwd, see the
pwd_mkdb manual page.)
It turned out the server (running as user
zeo didn’t have access to the
/usr/local/Plone/zeocluster/var/zeoserver, where it wanted to
PID-file and a logfile, because that was owned by
/usr/local/Plone/zeocluster/var/filestorage directory. So I fixed that;
server# chown zeo /usr/local/Plone/zeocluster/var/zeoserver server# chown zeo /usr/local/Plone/zeocluster/var/filestorage
Now I could start the server for the first time;
server# /usr/local/Plone/zeocluster/bin/plonectl start zeoserver: . daemon process started, pid=39058 This is the first start of this instance. Creating Data.fs and a Plone site. We only need to do this once, but it takes some time. Creating Plone site at /Plone in ZODB... Installed Plone standard content Finished adding Plone site client1: . daemon process started, pid=39062 client2: . daemon process started, pid=39066
The site creation is only run once, so at the next start, you will only see the notifications of the server and clients startup.
To go to the site, I pointed my browser to
Stopping the server goes as follows;
server# /usr/local/Plone/zeocluster/bin/plonectl stop zeoserver: . . . . . . . . . . daemon process stopped client1: . . . . . daemon process stopped client2: . . . . daemon process stopped
I’ll be experimenting with building a site for documentation next.
For comments, please send me an e-mail.
- Writing speed on FreeBSD 12.1-STABLE amd64
- Opencascade problem
- Have Python log to syslog
- Command-line versus GUI program
- Attempting a conky replacement in Python (part 2)