Installing Plone for Production on Ubuntu
1. A clean installation of a recent Ubuntu server. The tutorial has been tested on cloud and virtual box servers. The install described here will run in 512 MB RAM. More RAM will be
needed for larger or busy sites.
2. A hostname for the new site. You or your DNS admin should have already created a
hostname (e.g., www.yoursite.com) and a host record pointing to the new server.
3. Unix command-line and basic system administrator skills. You should know how to
use ssh to create a terminal session with your new server. You should know how to use vi or
some other terminal editor.
4. An Internet connection.
Step 1: Platform preparation
Get to the point where you can ssh to the server as a non-root user and use sudo to gain root
First step with any new server is to update the already installed system libraries:
sudo apt-get update
sudo apt-get upgrade
Then, install the platform’s build kit, nginx, and supervisor
sudo apt-get install build-essential python-dev libjpeg-dev libxslt-dev supervisor nginx
Step 2: Install Plone
Note that this is root installation sudo ./install.sh. The installer will create special system users to
build and run Plone.
When the install completes, you’ll be shown the preset administrative password. Record it ! If you
lose it, you may see it again:
sudo cat /usr/local/Plone/zeocluster/adminPassword.txt
Step 3: Set Plone to start with the server
We’re going to use supervisor to start Plone with the server. To do so, we’ll create a supervisor
sudo nano /etc/supervisor/conf.d/plone5.conf
Specify that supervisor should start the database server and client1 automatically:
When that file is saved you’re set to start on server start. To start immediately, tell supervisor about
the new components:
supervisor> add plone5server
plone5server: added process group
supervisor> add plone5client1
plone5client1: added process group
plone5client1 RUNNING pid 32327, uptime 0:00:02
plone5server RUNNING pid 32326, uptime 0:00:08