Skip to content

Deploying with Docker

cheeseblubber edited this page Nov 17, 2020 · 2 revisions

Production Deployment Self hosting

We currently have two types of images:

papercups/papercups:latest - builds the most up-to-date release papercups/papercups:[version number] - builds a specific app version

We recommend using papercups/papercups:latest, so you have the latest features and security updates!

1. Clone Papercups repo

git clone https://github.com/papercups-io/papercups.git

2. Add required configuration

  • SECRET_KEY_BASE: YOUR SECRET KEY
  • BACKEND_URL: YOUR_DOMAIN

To generate a secret key you can use: openssl rand -base64 64 or mix phx.gen.secret

3. Run Docker Compose

docker-compose -f docker-compose.prod.yml up

The docker-compose.prod.yml contains an example docker compose file the only two required environment variables are SECRET_KEY_BASE and BACKEND_URL all others are optional. For more information see .env.example for other variables that it can take. The production docker image is hosted on https://hub.docker.com/r/papercups/papercups

Docker in Development Mode

Similar to the production deploy you can run docker with a docker-compose up the docker-compose.dev.yml is aliased to docker-compose file.

The docker image for dev is hosted on https://hub.docker.com/repository/docker/papercups/papercups-dev