tabletop-companion/config/deploy.yml

73 lines
1.8 KiB
YAML
Raw Normal View History

2024-06-19 10:16:56 +00:00
service: ttcompanion
image: tsvallender/ttcompanion
traefik:
options:
publish:
- "443:443"
volume:
- "/letsencrypt/acme.json:/letsencrypt/acme.json" # To save the configuration file.
network: kamal
args:
entryPoints.web.address: ":80"
entryPoints.websecure.address: ":443"
entryPoints.web.http.redirections.entryPoint.to: websecure # We want to force https
entryPoints.web.http.redirections.entryPoint.scheme: https
entryPoints.web.http.redirections.entrypoint.permanent: true
certificatesResolvers.letsencrypt.acme.email: "trevor@ttcompanion.com"
certificatesResolvers.letsencrypt.acme.storage: "/letsencrypt/acme.json"
certificatesResolvers.letsencrypt.acme.httpchallenge: true
certificatesResolvers.letsencrypt.acme.httpchallenge.entrypoint: web #
servers:
web:
hosts:
- ttcompanion.com
labels:
traefik.http.routers.ttcompanion.entrypoints: websecure
traefik.http.routers.ttcompanion.rule: Host(`ttcompanion.com`)
traefik.http.routers.ttcompanion.tls.certresolver: letsencrypt
options:
network: kamal
volumes:
- /srv/ttcompanion/storage:/rails/storage
registry:
username: tsvallender
password:
- KAMAL_REGISTRY_PASSWORD
env:
clear:
APPLICATION_HOST: ttcompanion.com
DB_HOST: ttcompanion-postgres
RAILS_LOG_TO_STDOUT: true
RAILS_SERVE_STATIC_FILES: true
secret:
- RAILS_MASTER_KEY
- POSTGRES_PASSWORD
builder:
multiarch: false
accessories:
postgres:
image: postgres:16
host: ttcompanion.com
env:
clear:
POSTGRES_USER: postgres
secret:
- POSTGRES_PASSWORD
directories:
- /srv/ttcompanion/data:/var/lib/postgresql/data
options:
network: kamal
healthcheck:
log_lines: 1000
asset_path: /rails/public/assets