--- services: caddy: image: lucaslorentz/caddy-docker-proxy:ci-alpine container_name: caddy ports: - 80:80 - 443:443 environment: - CADDY_INGRESS_NETWORKS=caddy networks: - caddy volumes: - /var/run/docker.sock:/var/run/docker.sock - caddy_data:/data restart: unless-stopped depends_on: autobase-console-ui: condition: service_healthy labels: caddy.email: ${EMAIL} autobase-console-api: image: autobase/console_api:2.10.0 container_name: autobase-console-api healthcheck: test: ["CMD", "curl", "-fsS", "-H", "accept: application/json", "-H", "Authorization: Bearer ${AUTH_TOKEN}", "http://localhost:8080/api/v1/version"] interval: 10s timeout: 5s retries: 5 restart: unless-stopped depends_on: autobase-console-db: condition: service_healthy volumes: - /var/run/docker.sock:/var/run/docker.sock - /tmp/ansible:/tmp/ansible environment: - PG_CONSOLE_AUTHORIZATION_TOKEN=${AUTH_TOKEN} - PG_CONSOLE_LOGGER_LEVEL=${PG_CONSOLE_LOGGER_LEVEL:-INFO} - PG_CONSOLE_DB_HOST=autobase-console-db networks: - autobase - caddy autobase-console-ui: image: autobase/console_ui:2.10.0 container_name: autobase-console-ui healthcheck: test: [ "CMD", "curl", "http://localhost:80/" ] interval: 10s timeout: 5s retries: 5 restart: unless-stopped depends_on: autobase-console-api: condition: service_healthy labels: caddy: ${DOMAIN} caddy.reverse_proxy: autobase-console-ui:80 environment: - PG_CONSOLE_AUTHORIZATION_TOKEN=${AUTH_TOKEN} - PG_CONSOLE_API_HOST=autobase-console-api - PG_CONSOLE_DBDESK_STUDIO_HOST=dbdesk-studio - PG_CONSOLE_DBDESK_STUDIO_PORT=${PG_CONSOLE_DBDESK_STUDIO_PORT:-9876} networks: - autobase - caddy autobase-console-db: image: autobase/console_db:2.10.0 container_name: autobase-console-db healthcheck: test: pg_isready -U postgres -h 127.0.0.1 interval: 5s timeout: 5s retries: 10 restart: unless-stopped volumes: - console_postgres:/var/lib/postgresql networks: - autobase dbdesk-studio: image: docker.io/bhavikagarwal2001/dbdesk-studio:0.1.5 container_name: dbdesk-studio ports: - 9876:9876 # nginx (frontend + /api/ proxy); Express listens internally on PORT healthcheck: test: ["CMD", "curl", "-fsS", "http://localhost:6789/health"] interval: 10s timeout: 5s retries: 5 restart: unless-stopped volumes: - dbdesk_studio_data:/opt/dbdesk-studio environment: - PORT=6789 - CORS_ORIGIN=${CORS_ORIGIN:-*} - NODE_ENV=production - DEFAULT_SSL_MODE=require - STORAGE_PATH=/opt/dbdesk-studio/data networks: - autobase volumes: console_postgres: name: console_postgres caddy_data: name: caddy_data dbdesk_studio_data: name: dbdesk_studio_data networks: autobase: name: autobase caddy: name: caddy