All Projects → mimischi → dokku-sentry

mimischi / dokku-sentry

Licence: other
Deploy your own instance of Sentry onto Dokku!

Programming Languages

python
139335 projects - #7 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to dokku-sentry

django-docker
Toy project. Trying to use Django inside a Docker container for both local development and production deployment.
Stars: ✭ 18 (-71.87%)
Mutual labels:  sentry, dokku
wpacked
📦 WPacked is a WordPress development starter kit with portability and immediate local development in mind.
Stars: ✭ 73 (+14.06%)
Mutual labels:  dokku
plausible on dokku
Dockerfile to run Plausible (analytics) on Dokku (mini-Heroku)
Stars: ✭ 17 (-73.44%)
Mutual labels:  dokku
self-hosted
Sentry, feature-complete and packaged up for low-volume deployments and proofs-of-concept
Stars: ✭ 5,034 (+7765.63%)
Mutual labels:  sentry
sentry
Mirror of Apache Sentry
Stars: ✭ 114 (+78.13%)
Mutual labels:  sentry
sentry exporter
Prometheus exporter for Sentry
Stars: ✭ 23 (-64.06%)
Mutual labels:  sentry
sentry-horn
Swift based sentry iOS application
Stars: ✭ 15 (-76.56%)
Mutual labels:  sentry
sentry-mobile
Sentry Mobile App
Stars: ✭ 31 (-51.56%)
Mutual labels:  sentry
sanic-sentry
Sentry integration to sanic web server
Stars: ✭ 31 (-51.56%)
Mutual labels:  sentry
asgi-correlation-id
Request ID propagation for ASGI apps
Stars: ✭ 83 (+29.69%)
Mutual labels:  sentry
kamu
You favorite book library
Stars: ✭ 65 (+1.56%)
Mutual labels:  dokku
hapi-sentry
A hapi plugin for request error logging to Sentry
Stars: ✭ 24 (-62.5%)
Mutual labels:  sentry
sentry-docker-compose
How to setup a full Sentry instance with docker-compose.yml
Stars: ✭ 33 (-48.44%)
Mutual labels:  sentry
raven-python-lambda
Sentry/Raven SDK Integration For AWS Lambda (python) and Serverless
Stars: ✭ 48 (-25%)
Mutual labels:  sentry
go-sentry-kubernetes
Lightweight sentry error/crash reporter for kubernetes
Stars: ✭ 33 (-48.44%)
Mutual labels:  sentry
crow
Crow - a C++ client for Sentry
Stars: ✭ 119 (+85.94%)
Mutual labels:  sentry
sentry-testkit
A Sentry plugin to allow Sentry report interception and further inspection of the data being sent
Stars: ✭ 78 (+21.88%)
Mutual labels:  sentry
dokku-rabbitmq
a rabbitmq plugin for dokku
Stars: ✭ 41 (-35.94%)
Mutual labels:  dokku
sentry-spark
Apache Spark Sentry Integration
Stars: ✭ 14 (-78.12%)
Mutual labels:  sentry
react-sendbird-messenger
ReactJS (React-router-dom v6 + Antdesign + Firebase + Sendbird + Sentry) codebase containing real world examples (CRUD, auth, advanced patterns, etc).
Stars: ✭ 39 (-39.06%)
Mutual labels:  sentry

Project logo

Sentry version Dokku version

Run Sentry on Dokku

Deploy your own instance of Sentry onto Dokku!

This project is a clone of the official bootstrap repository (getsentry/onpremise) with a few modifications for a seamless deploy to Dokku.

What you get

This repository will deploy Sentry 9.1. It has been tested with Dokku 0.10+.

Requirements

Upgrading

When upgrading to a newer version, e.g. 8.22 to 9.1.0, you just need to follow the following steps:

First get the newest version of this repository from GitHub and push it to you Dokku host:

git pull
git push dokku master

During the deploy, Dokku will run all commands that are necessary to upgrade the database to the newest version. You do not need to do anything else.

Setup

This will guide you through the set up of a new Sentry instance. Make sure to follow these steps one after another.

App and databases

First create a new Dokku app. We'll call it sentry.

dokku apps:create sentry

Next we create the databases needed by Sentry and link them.

dokku postgres:create sentry_postgres
dokku postgres:link sentry_postgres sentry

dokku redis:create sentry_redis
dokku redis:link sentry_redis sentry

dokku memcached:create sentry_memcached
dokku memcached:link sentry_memcached sentry

Configuration

Set a secret key

dokku config:set --no-restart sentry SENTRY_SECRET_KEY=$(echo `openssl rand -base64 64` | tr -d ' ')

Email settings

If you want to receive emails from sentry (notifications, activation mails), you need to set the following settings accordingly.

dokku config:set --no-restart sentry SENTRY_EMAIL_HOST=smtp.example.com
dokku config:set --no-restart sentry SENTRY_EMAIL_USER=<yourusername>
dokku config:set --no-restart sentry SENTRY_EMAIL_PASSWORD=<yourmailpassword>
dokku config:set --no-restart sentry SENTRY_EMAIL_PORT=25
dokku config:set --no-restart sentry [email protected]
dokku config:set --no-restart sentry SENTRY_EMAIL_USE_TLS=True

Persistent storage

To persists user uploads (e.g. avatars) between restarts, we create a folder on the host machine and tell Dokku to mount it to the app container.

sudo mkdir -p /var/lib/dokku/data/storage/sentry
sudo chown 32768:32768 /var/lib/dokku/data/storage/sentry
dokku storage:mount sentry /var/lib/dokku/data/storage/sentry:/var/lib/sentry/files

Domain setup

To get the routing working, we need to apply a few settings. First we set the domain.

dokku domains:set sentry sentry.example.com

The parent Dockerfile, provided by the sentry project, exposes port 9000 for web requests. Dokku will set up this port for outside communication, as explained in its documentation. Because we want Sentry to be available on the default port 80 (or 443 for SSL), we need to fiddle around with the proxy settings.

First add the proxy mapping that sentry uses.

dokku proxy:ports-add sentry http:80:9000

Then, remove the proxy mapping added by Dokku.

dokku proxy:ports-remove sentry http:80:5000

If dokku proxy:report sentry shows more than one port mapping, remove all port mappings except the added above.

Push Sentry to Dokku

Grabbing the repository

First clone this repository onto your machine.

Via SSH

git clone [email protected]:mimischi/dokku-sentry.git

Via HTTPS

git clone https://github.com/mimischi/dokku-sentry.git

Set up git remote

Now you need to set up your Dokku server as a remote.

git remote add dokku [email protected]:sentry

Push Sentry

Now we can push Sentry to Dokku (before moving on to the next part).

git push dokku master

SSL certificate

Last but not least, we can go an grab the SSL certificate from Let's Encrypt.

dokku config:set --no-restart sentry [email protected]
dokku config:set --no-restart sentry SENTRY_USE_SSL=True
dokku letsencrypt sentry

Create a user

Sentry is now up and running on your domain (https://sentry.example.com). Before you're able to use it, you need to create a user.

dokku run sentry sentry createuser

This will prompt you to enter an email, password and whether the user should be a superuser.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].