xbs-api-docker/docker-compose.yml
nero120 024b624d9e Updated target api version to 1.1.13.
Replaced traefik with Caddy as reverse proxy.
Added health check for api in docker compose (resolves #4).
Updated node to v14 and other dependencies.
2021-04-02 01:27:43 +01:00

50 lines
1.3 KiB
YAML

version: "3.7"
services:
db:
container_name: "xbs-db"
environment:
- "MONGO_INITDB_DATABASE=xbrowsersync"
- "MONGO_INITDB_ROOT_PASSWORD=$XBS_DB_PASSWORD"
- "MONGO_INITDB_ROOT_USERNAME=$XBS_DB_USERNAME"
image: "mongo:4.4.4"
restart: "unless-stopped"
volumes:
- "xbs-db-data:/data/db"
- "./mongoconfig.js:/docker-entrypoint-initdb.d/mongoconfig.js"
api:
container_name: "xbs-api"
depends_on:
- "db"
environment:
- "XBROWSERSYNC_DB_PWD=$XBS_DB_PASSWORD"
- "XBROWSERSYNC_DB_USER=$XBS_DB_USERNAME"
healthcheck:
test: [ "CMD", "node", "/usr/src/api/healthcheck.js" ]
interval: "1m"
timeout: "10s"
retries: "5"
start_period: "30s"
image: "xbrowsersync/api:1.1.13"
restart: "unless-stopped"
volumes:
- "./settings.json:/usr/src/api/config/settings.json"
- "./healthcheck.js:/usr/src/api/healthcheck.js"
reverse-proxy:
command: "caddy reverse-proxy --from $XBS_API_HOSTNAME --to api:8080"
container_name: "xbs-reverse-proxy"
depends_on:
- "api"
image: "caddy:2.3.0-alpine"
ports:
- "443:443"
- "80:80"
restart: "unless-stopped"
volumes:
- "xbs-caddy-config:/config"
- "xbs-caddy-data:/data"
volumes:
xbs-caddy-config:
xbs-caddy-data:
xbs-db-data: