2
0
Clean and backupable on-premise deployment of Sentry using Docker COmpose
This repository has been archived on 2020-07-19. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
2019-12-26 08:26:28 +03:00
cron feat(sentry10): Make on-premise work for Sentry 10 (#220) 2019-11-12 02:18:59 +03:00
sentry fix(data): Use /data for persisting files and file caches (#295) 2019-12-06 03:32:31 +03:00
.env ref(env): Set docker-compose project name (#305) 2019-12-26 08:26:28 +03:00
.gitignore feat(sentry10): Make on-premise work for Sentry 10 (#220) 2019-11-12 02:18:59 +03:00
.travis.yml feat(sentry10): Make on-premise work for Sentry 10 (#220) 2019-11-12 02:18:59 +03:00
docker-compose.yml fix(data): Use /data for persisting files and file caches (#295) 2019-12-06 03:32:31 +03:00
install.sh feat(upgrade): Add automatic Snuba migration for upgrades (#292) 2019-12-09 21:33:02 +03:00
LICENSE license: Update BSL change date 2019-12-23 21:20:05 +00:00
Makefile Dockerfile & Makefile argument name mismatch (#232) 2019-07-29 17:55:35 +03:00
README.md meta(readme): Update upgrade notice (#299) 2019-12-09 23:40:18 +03:00
test.sh feat(sentry10): Make on-premise work for Sentry 10 (#220) 2019-11-12 02:18:59 +03:00

Sentry 10 On-Premise BETA Build Status

Official bootstrap for running your own Sentry with Docker.

NOTE: If you are not installing Sentry from scratch, our recommendation is to visit On-Premise Stable for Sentry 9.1.2 as this version may not be fully backward compatible. If you still want to try it out make sure you are on 9.1.2 first, back up your old Docker volumes just in case, and remember that if you haven't set up Redis persistency yourself some of your data (like your stats) may be lost during the upgrade.

Requirements

  • Docker 17.05.0+
  • Compose 1.19.0+

Minimum Hardware Requirements:

  • You need at least 2400MB RAM

Setup

To get started with all the defaults, simply clone the repo and run ./install.sh in your local check-out.

There may need to be modifications to the included example config files (sentry/config.example.yml and sentry/sentry.conf.example.py) to accommodate your needs or your environment (such as adding GitHub credentials). If you want to perform these, do them before you run the install script and copy them without the .example extensions in the name (such as sentry/sentry.conf.py) before running the install.sh script.

The recommended way to customize your configuration is using the files below, in that order:

  • config.yml
  • sentry.conf.py
  • .env w/ environment variables

We currently support a very minimal set of environment variables to promote other means of configuration.

If you have any issues or questions, our Community Forum is at your service!

Event Retention

Sentry comes with a cleanup cron job that prunes events older than 90 days by default. If you want to change that, you can change the SENTRY_EVENT_RETENTION_DAYS environment variable in .env or simply override it in your environment. If you do not want the cleanup cron, you can remove the sentry-cleanup service from the docker-compose.ymlfile.

Securing Sentry with SSL/TLS

If you'd like to protect your Sentry install with SSL/TLS, there are fantastic SSL/TLS proxies like HAProxy and Nginx. You'll likely want to add this service to your docker-compose.yml file.

Updating Sentry

Updating Sentry using Compose is relatively simple. Just use the following steps to update. Make sure that you have the latest version set in your Dockerfile. Or use the latest version of this repository.

Use the following steps after updating this repository or your Dockerfile:

docker-compose build --pull # Build the services again after updating, and make sure we're up to date on patch version
docker-compose run --rm web upgrade # Run new migrations
docker-compose up -d # Recreate the services

Resources