46 lines
1.3 KiB
YAML
46 lines
1.3 KiB
YAML
version: "3.9"
|
|
|
|
services:
|
|
server1:
|
|
image: us-central1-docker.pkg.dev/aptivaai-dev/aptiva-repo/server1:${IMG_TAG}
|
|
expose: ["${SERVER1_PORT}"]
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "curl -f http://localhost:${SERVER1_PORT}/healthz || exit 1"]
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
|
|
server2:
|
|
image: us-central1-docker.pkg.dev/aptivaai-dev/aptiva-repo/server2:${IMG_TAG}
|
|
expose: ["${SERVER2_PORT}"]
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "curl -f http://localhost:${SERVER2_PORT}/healthz || exit 1"]
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
|
|
server3:
|
|
image: us-central1-docker.pkg.dev/aptivaai-dev/aptiva-repo/server3:${IMG_TAG}
|
|
expose: ["${SERVER3_PORT}"]
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "curl -f http://localhost:${SERVER3_PORT}/healthz || exit 1"]
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
|
|
nginx:
|
|
image: nginx:1.25-alpine
|
|
command: ["nginx","-g","daemon off;"]
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
volumes:
|
|
- ./build:/usr/share/nginx/html:ro
|
|
- ./nginx.conf:/etc/nginx/nginx.conf:ro
|
|
- /etc/letsencrypt:/etc/letsencrypt:ro
|
|
- ./empty:/etc/nginx/conf.d
|
|
depends_on: [server1, server2, server3]
|