Complete setup guide, step-by-step


Hi everyone,
I am trying to deploy Senaite Health on a Digital Ocean Droplet. I get as far as installing Plone and configuring a second buildout file (senaite.cfg) but when it comes to running buildout to fetch Senaite Health, I have been getting a multitude of errors. Would anyone have a complete step-by-step guide for setting up Senaite Health on Ubuntu 18.04? Ideally from the initial Plone setup.


Hi @emmk , have you checked the “Installation” section from senaite.lims here?:

Install first the system dependencies, and then follow the well-documented installation instructions for Plone 4 here (4.3.18 version recommended):

Unifier installer for Plone 4.3.18 can be downloaded from here:

Once installed, modify the buildout.cfg (as explained in the first link posted above), but add in the eggs section of the buildout.cfg file too. Your buildout.cfg should look close to the following (note that besides egg, I stick here to Plone 4.3.18 of and I’ve also added index section):

parts =
extends =
find-links =
index =
eggs =
zcml =
eggs-directory = ${buildout:directory}/eggs

recipe = plone.recipe.zope2instance
user = admin:admin
http-address =
eggs =
zcml =

setuptools =
zc.buildout =

Once you have buildout.cfg in place, you only need to run bin/buildout and wait a little bit until it finishes. Then, just start the instance (bin/instance start for standalone mode or bin/zeoserver start + bin/client1 start for zeo mode). Open a browser and type http://localhost:8080 , install the Senaite site and you are done.



I too had trouble installing Senaite on Ubuntu Server 18.04. The instructions on GitHub worked for installing Plone but failed as soon as I added senaite.lims to the eggs. Follow those instructions with the modifications in bold below.

Here is the step-by-step.

Download Plone 4.3.18 unified installer and install
$sudo ./ --build-python --password=YourPassword zeo
cd into your build directory and edit the buildout.cfg
$cd /usr/local/Plone/zeocluster
$sudo gedit buildout.cfg
add senaite.lims in the eggs section
add cairocffi = 0.9.0 to the versions section
The newest version of cairocffi requires Python 3 and we’re using Python 2.7 virtualenv. You’ll get an error if you don’t require version 0.9.0 or lower.
$sudo -u plone_buildout bin/buildout
You’ll likely get some warnings and maybe syntax errors about “return outside function” from the bika package. Notice these but don’t worry unless the buildout fails.
$sudo chown -R plone_daemon: /usr/local/Plone
Ownership permission step must be done because senaite.lims egg creates a few files/directories with wrong permissions. This prevents plone_daemon from starting the process. The first permission problem was a log file couldn’t be created by plone_daemon. After that I gave up and did the whole directory recursively with the above command. Then
$sudo bin/plonectl start
Wait a few seconds then test in your browser at localhost:8080
Worked for me on two machines running 18.04.