This repository contains all the information needed to self-host a GlitchTip v4 instance on Dokku.
If you are looking to self-host to Heroku or DigitalOcean App Platform, please refer to GlitchTip's own meta repo and documentation. This repository is specifically for Dokku only.
- Dokku 0.28.1 (cannot guarantee this works on older versions of Dokku)
On your Dokku host, create an app for GlitchTip
dokku apps:create glitchtip
Ensure that the Postgres and Redis plugins are installed
sudo dokku plugin:install https://github.com/dokku/dokku-postgres.git postgres
sudo dokku plugin:install https://github.com/dokku/dokku-redis.git redis
Create a Postgres service and link it to your GlitchTip app
dokku postgres:create glitchtip-postgres
dokku postgres:link glitchtip-postgres glitchtip
Create a Redis service and link it to your GlitchTip app
dokku redis:create glitchtip-redis
dokku redis:link glitchtip-redis glitchtip
Clone this repository to your local machine
git clone https://github.com/b-ggs/dokku-glitchtip.git
cd dokku-glitchtip
Add a new remote to the git repository pointing to your Dokku host
# Replace `dokku.me` with your Dokku host's domain or IP address
git remote add dokku [email protected]:glitchtip
Push to your new dokku
remote to start deploying GlitchTip
git push dokku main
Dokku by default does not deploy the GlitchTip Celery worker.
On your Dokku host, run the Celery worker by scaling the worker
service up to 1
.
dokku ps:scale glitchtip worker=1
Set up HTTPS/SSL with your preferred method. Dokku has a LetsEncrypt plugin you can use to get certificates.
GlitchTip listens on port 8080. Configure Dokku to forward requests from port 80 and 443 to GlitchTip.
dokku proxy:ports-set glitchtip http:80:8080 https:443:8080
Set your domain
# Replace `glitchtip.dokku.me` with your domain
dokku config:set glitchtip GLITCHTIP_DOMAIN=https://glitchtip.dokku.me
Set a secret key.
dokku config:set glitchtip SECRET_KEY=$(python3 -c "import secrets; print(''.join(secrets.choice([chr(i) for i in range(0x21, 0x7F)]) for i in range(60)));")
Create your GlitchTip superuser
dokku run glitchtip ./manage.py createsuperuser
Refer to the GlitchTip Configuration documentation for other variables you can set such as for e-mail notifications, etc.
You're now fully set up to use GlitchTip! Go to the address you've set for your GlitchTip app and log in with your superuser to get started!