46 lines
1.1 KiB
YAML
46 lines
1.1 KiB
YAML
services:
|
|
postgres:
|
|
image: postgres:16-alpine
|
|
container_name: edueasy-db
|
|
restart: unless-stopped
|
|
environment:
|
|
POSTGRES_DB: edueasy
|
|
POSTGRES_USER: edueasy
|
|
POSTGRES_PASSWORD: edueasy_pass
|
|
volumes:
|
|
- edueasy_pgdata:/var/lib/postgresql/data
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U edueasy -d edueasy"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
networks:
|
|
- caddy
|
|
|
|
app:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: edueasy
|
|
restart: unless-stopped
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
environment:
|
|
DATABASE_URL: "postgresql://edueasy:edueasy_pass@postgres:5432/edueasy?schema=public"
|
|
BETTER_AUTH_SECRET: "${BETTER_AUTH_SECRET:-change-me-in-production}"
|
|
BETTER_AUTH_URL: "https://mate.cbcren.online"
|
|
NODE_ENV: production
|
|
networks:
|
|
- caddy
|
|
labels:
|
|
caddy: mate.cbcren.online
|
|
caddy.reverse_proxy: "{{upstreams 3000}}"
|
|
|
|
networks:
|
|
caddy:
|
|
external: true
|
|
|
|
volumes:
|
|
edueasy_pgdata:
|