Installing Alaveteli

There are a number of ways to install Alaveteli, but we recommend you begin with the Docker installation to get a development site up and running.

Before you start

This is important: there is a difference between installing Alaveteli for development or production.

You always start with a development site. This is one you’re going to change, customise, and perhaps experiment while you get it up and running. Every Alaveteli installation requires some customisation (it’s designed this way!) including creating your own theme. In this environment you can see debug messages, and you don’t need to worry too much about the efficiency and performance of the site (because it’s not really getting lots of traffic).

A production site is different: you want your production site to run as efficiently as possible, so things like caching are switched on, and debug messages switched off. It’s also important to be able to deploy changes to a production site quickly and efficiently, so we recommend you use a deployment mechanism too.

The installation path

The path to getting Alaveteli up and running almost never starts on the remote server where you want the website to run. You must customise Alaveteli before it’s ready for the public to use, so get it running in a development environment first — and that nearly always means on your local machine.

So the best way to get started is to install locally using Docker — that’s easiest because it takes care of local dependencies for you. In order to customise your installation, you’ll need to make your own theme and, eventually, that theme will go into its own git repo. Only when you’ve got this far can you move onto a staging site. Here you can test the code in an identical environment to your production site. The very last step is to go live.

Depending on the resources you have available, it might be that your staging server becomes your production server.

How to install the Alaveteli code

Although we recommend Docker for development, there are of course other ways to install Alaveteli. Our Dockerdile is not suitable for production (but remember that you won't need a production site until you've done a development deployment). For your own server, there's an installation script which does most of the work for you, or you can follow the manual installation instructions.
If you're not sure which one you want, install using Docker first!

Other installation information

Alaveteli needs to be able to send and receive email. If you’re installing manually, you need to set up your MTA (Mail Transfer Agent) appropriately. The other install methods will do this for you.


When you set up your production server, we strongly recommend you use the Capistrano deployment mechanism that’s included with Alaveteli. Set this up and you never have to edit files on those servers, because Capistrano takes care of that for you.