mjolnir/stack.staging.yml

114 lines
3.5 KiB
YAML

version: "3.8"
x-environment:
&default-environment
REDIS_HOST: glitch_redis
DATABASE_URL: postgres://postgres:postgres@glitch_postgres:5432/postgres
SECRET_KEY: 4f99181d528f201c16806b34b980791f9a99570d645910dacfe31198b503ea2f # best to run openssl rand -hex 32
PORT: 8000
EMAIL_URL: smtp://glitch@nixc.us:G2BeHLDezu2Eg8x5aDy8MZ3RTLJoP6xJyvwDnFDMCrFxe7AWW5mAst96zvkcDq3R@box.p.nixc.us:465 # https://glitchtip.com/documentation/install#configuration
GLITCHTIP_DOMAIN: https://staging.glitch.nixc.us # Change this to your domain
DEFAULT_FROM_EMAIL: glitch@nixc.us # Change this to your email
CELERY_WORKER_CONCURRENCY: 2 # Set to 2 to prevent excessive memory usage. Change it or remove to set it to the number of cpu cores.
## custom config
GLITCHTIP_MAX_EVENT_LIFE_DAYS: 30
GLITCHTIP_MAX_TRANSACTION_EVENT_LIFE_DAYS: 5
GLITCHTIP_MAX_FILE_LIFE_DAYS: 5
ENABLE_USER_REGISTRATION: "true"
ENABLE_ORGANIZATION_CREATION: "true"
## gitea api b994dd8dd3162aa79db17bdb893a7c9271c63369
# SOCIALACCOUNT_PROVIDERS_gitea_GITEA_URL: "https://git.nixc.us/"
x-depends_on:
&default-depends_on
- postgres
- redis
services:
postgres:
image: postgres:15
environment:
POSTGRES_HOST_AUTH_METHOD: "trust"
volumes:
- /mnt/tank/persist/nixc.us/glitch/production/db:/var/lib/postgresql/data
deploy:
replicas: 1
placement:
constraints:
- node.hostname == macmini1
labels:
- "us.nixc.autodeploy=true"
- "traefik.enable=false"
networks:
- default
redis:
image: redis
deploy:
replicas: 1
placement:
constraints:
- node.hostname == macmini1
labels:
- "us.nixc.autodeploy=true"
- "traefik.enable=false"
networks:
- default
web:
image: glitchtip/glitchtip
depends_on: *default-depends_on
environment: *default-environment
volumes:
- /mnt/tank/persist/nixc.us/glitch/production/uploads:/code/uploads
deploy:
replicas: 1
placement:
constraints:
- node.hostname == macmini1
labels:
- "us.nixc.autodeploy=true"
- "traefik.enable=true"
- "traefik.http.routers.glitch_glitch.tls=true"
- "traefik.http.services.glitch_glitch.loadbalancer.server.port=8000"
- "traefik.http.routers.glitch_glitch.rule=Host(`staging.glitch.nixc.us`)"
- "traefik.http.routers.glitch_glitch.entrypoints=websecure"
- "traefik.http.routers.glitch_glitch.tls.certresolver=letsencryptresolver"
- "traefik.http.routers.glitch_glitch.service=glitch_glitch"
- "traefik.docker.network=traefik"
# - 'traefik.http.routers.glitch_glitch.middlewares=authelia@docker'
networks:
- default
- traefik
worker:
image: glitchtip/glitchtip
command: ./bin/run-celery-with-beat.sh
depends_on: *default-depends_on
environment: *default-environment
volumes:
- /mnt/tank/persist/nixc.us/glitch/production/uploads:/code/uploads
deploy:
replicas: 1
placement:
constraints:
- node.hostname == ingress.nixc.us
labels:
- "traefik.enable=false"
networks:
- default
migrate:
image: glitchtip/glitchtip
depends_on: *default-depends_on
command: "./manage.py migrate"
environment: *default-environment
deploy:
replicas: 1
placement:
constraints:
- node.hostname == macmini1
labels:
- "traefik.enable=false"
networks:
- default
networks:
traefik:
external: true
default:
external: false