81 lines
1.8 KiB
YAML
81 lines
1.8 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
backend-api:
|
|
build:
|
|
context: ./packages/backend-api
|
|
dockerfile: Dockerfile
|
|
env_file:
|
|
- ./packages/backend-api/.env.production
|
|
environment:
|
|
- REDIS_URL=redis://redis:6379
|
|
restart: unless-stopped
|
|
networks:
|
|
- webnet
|
|
expose:
|
|
- "4000"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "curl -f http://localhost:4000/health || exit 1"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
studio-panel:
|
|
build:
|
|
context: .
|
|
dockerfile: ./packages/studio-panel/Dockerfile.simple
|
|
environment:
|
|
- VITE_TOKEN_SERVER_URL=http://backend-api:4000
|
|
- VITE_STUDIO_URL=https://avanzacast-studio.bfzqqk.easypanel.host
|
|
- VITE_BROADCASTPANEL_URL=https://avanzacast-broadcastpanel.bfzqqk.easypanel.host
|
|
restart: unless-stopped
|
|
networks:
|
|
- webnet
|
|
expose:
|
|
- "80"
|
|
volumes:
|
|
- ./docker/letsencrypt:/etc/letsencrypt:ro
|
|
|
|
broadcast-panel:
|
|
build:
|
|
context: ./packages/broadcast-panel
|
|
dockerfile: Dockerfile
|
|
environment:
|
|
- VITE_TOKEN_SERVER_URL=http://backend-api:4000
|
|
- VITE_BROADCASTPANEL_URL=https://avanzacast-broadcastpanel.bfzqqk.easypanel.host
|
|
restart: unless-stopped
|
|
networks:
|
|
- webnet
|
|
expose:
|
|
- "5175"
|
|
volumes:
|
|
- ./docker/letsencrypt:/etc/letsencrypt:ro
|
|
|
|
redis:
|
|
image: redis:7-alpine
|
|
restart: unless-stopped
|
|
networks:
|
|
- webnet
|
|
expose:
|
|
- "6379"
|
|
|
|
reverse-proxy:
|
|
image: nginx:stable-alpine
|
|
volumes:
|
|
- ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
|
|
- ./docker/letsencrypt:/etc/letsencrypt:ro
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
depends_on:
|
|
- backend-api
|
|
- studio-panel
|
|
- broadcast-panel
|
|
networks:
|
|
- webnet
|
|
restart: unless-stopped
|
|
|
|
networks:
|
|
webnet:
|
|
driver: bridge
|