Public Repository

Last pushed: 2 years ago
Short Description
Full Description

How to use this image
How to setup a full Sentry instance
Start a Redis container

$ docker run -d --name sentry-redis redis
Start a Postgres container

$ docker run -d --name sentry-postgres -e POSTGRES_PASSWORD=secret -e POSTGRES_USER=sentry postgres
Generate a new secret key to be shared by all sentry containers. This value will then be used as the SENTRY_SECRET_KEY environment variable.

$ docker run --rm sentry generate-secret-key
If this is a new database, you'll need to run upgrade

$ docker run -it --rm -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry upgrade
Note: the -it is important as the initial upgrade will prompt to create an initial user and will fail without it

Now start up Sentry server

$ docker run -d --name my-sentry -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-redis:redis --link sentry-postgres:postgres sentry
The default config needs a celery beat and celery workers, start as many workers as you need (each with a unique name)

$ docker run -d --name sentry-celery-beat -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry celery beat
$ docker run -d --name sentry-celery1 -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry celery worker
Port mapping
If you'd like to be able to access the instance from the host without the container's IP, standard port mappings can be used. Just add -p 8080:9000 to the docker run arguments and then access either http://localhost:8080 or http://host-ip:8080 in a browser.

Configuring the initial user
If you did not create a superuser during upgrade, use the following to create one:

$ docker run -it --rm -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-redis:redis --link sentry-postgres:postgres sentry createuser
Environment variables
When you start the sentry image, you can adjust the configuration of the Sentry instance by passing one or more environment variables on the docker run command line. Please note that these environment variables are provided as a jump start, and it's highly recommended to either mount in your own config file or utilize the sentry:onbuild variant.

A secret key used for cryptographic functions within Sentry. This key should be unique and consistent across all running instances. You can generate a new secret key doing something like:

$ docker run --rm sentry generate-secret-key
Database credentials for your Postgres server. These values aren't needed if a linked postgres container exists.

Connection information for your Redis server. These values aren't needed if a linked redis container exists.

Connection information for a Memcache server. These values aren't needed if a linked memcached container exists.

Directory where uploaded files will be stored. This defaults to /var/lib/sentry/files and is a VOLUME for persistent data.

The email address used for From: in outbound emails. Default: root@localhost

Connection information for an outbound smtp server. These values aren't needed if a linked smtp container exists.

If you're using Mailgun for inbound mail, set your API key and configure a route to forward to /api/hooks/mailgun/inbound/.

Docker Pull Command