Add example for production deployment

This commit is contained in:
2025-05-28 00:33:01 +04:00
parent dbf892535b
commit 7b89230cae
17 changed files with 202 additions and 17 deletions

63
prod/docker-compose.yml Normal file
View File

@@ -0,0 +1,63 @@
services:
mongodb:
image: mongo:8.0.9-noble
restart: unless-stopped
# ports:
# - 27017:27017
env_file: ./config/mongodb/.env
volumes:
- mongodb_data:/data/db
healthcheck:
test: echo 'db.runCommand("ping").ok' | mongosh --quiet
interval: 10s
timeout: 5s
retries: 5
start_period: 20s
consumer:
image: git.aykhans.me/bsky/feedgen-consumer:latest
restart: unless-stopped
env_file:
- ./config/app/.mongodb.env
- ./config/app/.consumer.env
depends_on:
mongodb:
condition: service_healthy
feedgen_az:
image: git.aykhans.me/bsky/feedgen-generator-az:latest
restart: unless-stopped
env_file:
- ./config/app/.mongodb.env
- ./config/app/feedgen/.az.env
depends_on:
mongodb:
condition: service_healthy
api:
image: git.aykhans.me/bsky/feedgen-api:latest
restart: unless-stopped
ports:
- 8421:8421
env_file:
- ./config/app/.mongodb.env
- ./config/app/.api.env
depends_on:
mongodb:
condition: service_healthy
caddy:
image: caddy:2.10.0-alpine
restart: unless-stopped
ports:
- 80:80
- 443:443
- 443:443/udp
env_file: ./config/caddy/.env
volumes:
- ./config/caddy/Caddyfile:/etc/caddy/Caddyfile
- caddy_data:/data
volumes:
mongodb_data:
caddy_data: