This section of Plone content management system Developer Documentation is no longer under active maintenance. The section is included as the reference for older technologies (Plone 2.x, Plone 3.x). Some of the practices described in this documents may still work, but are not recommended to be used in your active Plone development. Use at your own risk.
If you arrived at this page by a web search we recommend to also see the Plone Developer Documentation front page .
Installation instructions for Plone for various operating systems and situations.
This document covers the basics of installing Plone on popular operating systems. It will also point you to other documents for more complex or demanding installations.
Plone runs as an application on the Zope application server. That server is installed automatically by the install process.
We strongly advise against installing Plone via OS package or port. There is no .rpm, .deb, or BSD port that is supported by the Plone community. Plone dependencies can and should be installed via package or port -- but not Plone itself.
Plone is available for Microsoft Windows, Mac OSX X, Linux and BSD operating systems.
Binary installers are available for Windows and OS X. Installation on Linux, BSD and other Unix workalikes requires a source code installation, made easy by our Unified Installer. "Unified" refers to its ability to install on most Unix workalikes.
See Plone installation requirements for detailed requirements.
Plone can run on all popular desktop or server operating systems, including Linux, OS X, BSD and Microsoft Windows.
We describe Ubuntu/Debian installation in detail as an example of installation on a common Unix workalike. The only difference for most other systems would be in package-manager commands and package names. See Plone installation requirements for package names and commands on other platforms.
This is the recommended method for a development or evaluation installation of Plone on a Unix workalike. For a production installation, Installing Plone for Production on Ubuntu is a much better guide.
This recipe is good for:
The resulting installation is self-contained, does not touch system files, and is safe to play with (no root/sudoing is needed).
If you are not familiar with UNIX operating system command line you might want to study this Linux shell tutorial first.
For information on using this installation with more advanced production hosting environments and deployments, see the hosting guide.
Instructions are tested for the Ubuntu 12.04 Long Term Support release.
sudo apt-get install python-setuptools python-dev build-essential libssl-dev libxml2-dev libxslt1-dev libbz2-dev libjpeg62-dev
You will probably also want these optional system packages (see Plone manual for more information):
sudo apt-get install libreadline-dev wv poppler-utils
libreadline-dev is only necessary if you wish to build your own python rather than use your system's python 2.7.
If you're planning on developing with Plone, install git version control support:
sudo apt-get install git
If sudo command is not recognized or does not work you don't have administrator rights to Ubuntu / Debian operating system. Please contact your server vendor or consult the operating system support forum.
Download from the plone.org download page to your server using wget command. Curl also works. Substitute the latest version number for 4.3.2 in the instructions below.
wget --no-check-certificate https://launchpad.net/plone/4.3/4.3.2/+download/Plone-4.3.2-UnifiedInstaller.tgz
# Extract the downloaded file # tar -xf Plone-4.3.2-UnifiedInstaller.tgz # # Go the folder containing installer script # cd Plone-4.3.2-UnifiedInstaller # # Run script ./install.sh standalone
install.sh has many options, use:
to discover them.
The default admin credentials will be printed to the console. You can change this password after logging in to the Zope Management Interface.
The password is also written down in the buildout.cfg file, but this setting is not effective after Plone has been started for the first time. Changing this setting does not do any good.
If you're using this Plone install for development, add the common development tool set.
cd ~/Plone/zinstance bin/buildout -c develop.cfg
You'll need to add the "-c develop.cfg" again each time you run buildout, or you'll lose the extra development tools.
If you're developing, start Plone in foreground mode for a test run (you'll see potential errors in the console):
cd ~/Plone/zinstance bin/plonectl fg
When you start Plone in the foreground, it runs in debug mode, which is much slower than production mode since it reloads templates for every request.
For evaluation, instead use:
cd ~/Plone/zinstance bin/plonectl start
cd ~/Plone/zinstance bin/plonectl stop
to stop the instance.
By default, Plone will listen to port 8080 on available network interfaces. That may be changed by editing buildout.cfg and re-running buildout.
Now take a look at your Plone site by visiting the following address in your webbrowser:
The greeting page will let you create a new site. For this you need the login credentials printed to your terminal earlier, also available at ~/Plone/zinstance/adminPassword.txt.
If everything is OK, press CTRL-C in the terminal to stop Plone if you're running in debug mode. Use the plonectl stop command if you didn't start in debug mode.
If you have problems, please see the help guidelines.
For automatic start-up when your server boots up, init scripts, etc. please see the hosting guide.
Here are quick instructions to install Plone using a pre-installed buildout and the OS-provided Python interpreter. This procedure is only useful if you know buildout well enough to tailor your own buildout configuration.
You need to manage dependencies (Python, libxml, Pillow) yourself.
Install virtualenv for python (on Ubuntu):
sudo apt-get install python-virtualenv
Create a virtualenv where you can install some Python packages (ZopeSkel, Pillow):
In this virtualenv install ZopeSkel (from the release 2 series):
source plone-virtualenv/bin/activate easy_install "ZopeSkel<2.99"
Create Plone buildout project using ZopeSkel:
paster create -t plone4_buildout myplonefolder
Optionally edit buildout.cfg at this point. Run buildout (use Python 2.6 for Plone 4.1):
python2.6 bootstrap.py bin/buildout
By far the easiest way to install on Windows is to use the binary installer provided on plone.org. This installation is adequate for Python development. It is very rare to need C language extensions.
If you have needs beyond those met by the Windows Installer, read on.
For Plone 4.1 and later, see these instructions:
If you wish to develop Plone on Windows you need to set-up a working MingW environment (this can be somewhat painful if you aren't used to it)
This is the recommended method if you want to try Plone for the first time.
Please use the installer from the download page http://plone.org/products/plone/releases.
The binary installer is intended to provide an environment suitable for testing, evaluating, and developing theme and add-on packages. It will not give you the ability to add or develop components that require a C compiler. This is very rarely needed.
Installation via the Unified Installer or buildout is very similar to Unix. However, you will need to install a command-line build environment. To get a free build kit from Apple, do one of the following:
After either of these steps, you immediately should be able to install Plone using the Unified Installer.
Proceed as with Linux.
If you are installing Plone 4.2+ or 4.1 with Diazo, you will need up-to-date versions of libxml2 and libxslt:
LIBXML2 >= "2.7.8" LIBXSLT >= "1.1.26"
Ideally, install these via system packages or ports. If that's not possible, use most current version of the z3c.recipe.staticlxml buildout recipe to build an lxml (Python wrapper) egg with static libxml2 and libxslt components.
Don't worry about this if you're using an installer.
When you have Plone installed and want to start development you need do enter debug mode.
The source code of this file is hosted on GitHub. Everyone can update and fix errors in this document with few clicks - no downloads needed.
For basic information about updating this manual and Sphinx format please see Writing and updating the manual guide.