diff --git a/excalidash/compose.yaml b/excalidash/compose.yaml new file mode 100644 index 0000000..9a31048 --- /dev/null +++ b/excalidash/compose.yaml @@ -0,0 +1,46 @@ +services: + excalidash-backend: + image: zimengxiong/excalidash-backend:latest + container_name: excalidash-backend + restart: unless-stopped + environment: + - TZ=Asia/Ho_Chi_Minh + - DATABASE_PROVIDER=sqlite + - DATABASE_URL=file:/app/prisma/dev.db + - PORT=8000 + - NODE_ENV=production + - AUTH_MODE=local + - TRUST_PROXY=1 + - JWT_SECRET=ac29138831fceecd955488cb77aeb2377720ef062b3809184d39ee94eff1edfc + - CSRF_SECRET=d86a5dae06c7bf5960d6eca8c1a04af5ad5012307c176fc6f0118d1731b6af6d + volumes: + - /docker/excalidash/data:/app/prisma + networks: + - excalidash-network + healthcheck: + test: ["CMD", "node", "-e", "require('http').get('http://127.0.0.1:8000/health', (r) => process.exit(r.statusCode === 200 ? 0 : 1))"] + interval: 30s + timeout: 10s + retries: 3 + + excalidash-frontend: + image: zimengxiong/excalidash-frontend:latest + container_name: excalidash-frontend + restart: unless-stopped + environment: + - TZ=Asia/Ho_Chi_Minh + ports: + - "8030:80" + depends_on: + - excalidash-backend + networks: + - excalidash-network + healthcheck: + test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://127.0.0.1:80"] + interval: 30s + timeout: 10s + retries: 3 + +networks: + excalidash-network: + driver: bridge