Installing Cachet with Docker


Thank you, community!

Docker support is maintained by Cachet users from within the community.

Getting started with Docker Compose

Quickly launch Cachet, NGINX and PostgreSQL docker images with docker-compose.

  1. Clone the repository:
$ git clone cachet-docker
$ cd cachet-docker
  1. Edit the docker-compose.yml file to specify your ENV variables.

  2. To build an image containing a specific Cachet release, change the cachet_ver ARG in the docker-compose.yml file:

      context: .
        - cachet_ver=v2.3.10
  1. Build and run the image:
$ docker-compose build
$ docker-compose up
  1. Continue to configure Cachet in your web browser by navigating to your Docker host's IP address.


Default port

cachethq/docker runs on port 8000 by default. This is exposed on host port 80 when using docker-compose.


Version stability warning:

The master branch and "cachethq/docker:latest" Docker automated build are a work in progress / development version of the upstream project. As such, master or latest should not be used in a production environment as it may change at anytime.

We strongly recommend specifying a stable Cachet Release at build time as mentioned in step 3 above.


When running in production you should ensure that you enable SSL.

This is commonly achieved by running Nginx with your certificates on your Docker host, service or load balancers in-front of the running container, or by adding your custom SSL certificates and configuration to the supplied Nginx configuration.

Running Cachet Docker container manually

Run a DB container:

$ docker run --name postgres -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=postgres -d postgres:9.5

Run Cachet:

$ docker run -d --name cachet --link postgres -e DB_DRIVER=pgsql -e DB_HOST=postgres -e DB_DATABASE=postgres -e DB_USERNAME=postgres -e DB_PASSWORD=postgres -d cachethq/docker:latest

Now go to http://<ipdockerisboundto>:8000/setup and have fun!