Add docker-compose file
This commit is contained in:
parent
a834207fee
commit
261b8cbed7
3
.gitignore
vendored
3
.gitignore
vendored
|
|
@ -1,4 +1,5 @@
|
|||
/graphics
|
||||
.DS_Store
|
||||
**/*.secret
|
||||
|
||||
**/*.pw
|
||||
**/*.secret
|
||||
|
|
|
|||
56
docker-compose.yml
Normal file
56
docker-compose.yml
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
services:
|
||||
crabfit-api:
|
||||
build:
|
||||
context: ./api
|
||||
# args:
|
||||
# adaptor: sql-adaptor (default) | memory-adaptor | datastore-adaptor
|
||||
# # datastore is for Google Datastore
|
||||
secrets:
|
||||
- crabfit database password
|
||||
- crabfit cron key
|
||||
environment:
|
||||
DATABASE_PASSWORD_FILE: /run/secrets/crabfit database password
|
||||
DATABASE_URL: psql://crabfit@crabfit-database:5432/crabfit
|
||||
FRONTEND_URL: https://availability.techwork.zone
|
||||
CRON_KEY_FILE: /run/secrets/crabfit cron key
|
||||
labels:
|
||||
traefik.enable: true
|
||||
traefik.http.routers.crabfit-api.rule: Host(`api.a10y.techwork.zone`)
|
||||
traefik.http.routers.crabfit-api.tls: true
|
||||
traefik.http.routers.crabfit-api.tls.certresolver: letsencrypt_standalone
|
||||
networks:
|
||||
- crabfit-internal
|
||||
- public
|
||||
crabfit-database:
|
||||
image: postgres:17
|
||||
secrets: [ 'crabfit database password' ]
|
||||
environment:
|
||||
POSTGRES_PASSWORD_FILE: /run/secrets/crabfit database password
|
||||
POSTGRES_USER: crabfit
|
||||
POSTGRES_DB: crabfit
|
||||
volumes:
|
||||
./mounts/database:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD", "pg_isready"]
|
||||
interval: 30s
|
||||
timeout: 20s
|
||||
retries: 3
|
||||
networks: [ crabfit-internal ]
|
||||
|
||||
crabfit-frontend:
|
||||
build:
|
||||
context: ./frontend
|
||||
labels:
|
||||
traefik.enable: true
|
||||
traefik.http.routers.crabfit-frontend.rule: (Host(`a10y.techwork.zone`) || Host(`availability.techwork.zone`))
|
||||
traefik.http.routers.crabfit-frontend.tls: true
|
||||
traefik.http.routers.crabfit-frontend.tls.certresolver: letsencrypt_standalone
|
||||
environment:
|
||||
NEXT_PUBLIC_API_URL: https://api.a10y.techwork.zone
|
||||
|
||||
|
||||
secrets:
|
||||
crabfit database password:
|
||||
file: ./postgres.pw
|
||||
crabfit cron key:
|
||||
file: ./cron.secret
|
||||
Loading…
Reference in a new issue