version: "3.8" services: frontend: image: atlargeresearch/opendc-web-ui:v2.1 restart: on-failure networks: - backend environment: NEXT_PUBLIC_AUTH0_DOMAIN: ${OPENDC_AUTH0_DOMAIN} NEXT_PUBLIC_AUTH0_CLIENT_ID: ${OPENDC_AUTH0_CLIENT_ID} NEXT_PUBLIC_AUTH0_AUDIENCE: ${OPENDC_AUTH0_AUDIENCE} NEXT_PUBLIC_SENTRY_DSN: ${OPENDC_FRONTEND_SENTRY_DSN-} api: image: atlargeresearch/opendc-web-api:v2.1 restart: on-failure networks: - backend depends_on: - mongo environment: - MONGO_INITDB_ROOT_USERNAME - MONGO_INITDB_ROOT_PASSWORD - MONGO_INITDB_DATABASE - OPENDC_DB - OPENDC_DB_USERNAME - OPENDC_DB_PASSWORD - OPENDC_DB_HOST=mongo - OPENDC_FLASK_SECRET - OPENDC_OAUTH_CLIENT_ID - SENTRY_DSN=${OPENDC_API_SENTRY_DSN-} - SENTRY_ENVIRONMENT simulator: image: atlargeresearch/opendc:v2.1 restart: on-failure networks: - backend depends_on: - mongo volumes: - type: bind source: ./traces target: /opt/opendc/traces environment: - OPENDC_API_URL=${OPENDC_API_BASE_URL} - AUTH0_DOMAIN=${OPENDC_AUTH0_DOMAIN} - AUTH0_AUDIENCE=${OPENDC_AUTH0_AUDIENCE} - AUTH0_CLIENT_ID=${OPENDC_AUTH0_CLIENT_ID_RUNNER} - AUTH0_CLIENT_SECRET=${OPENDC_AUTH0_CLIENT_SECRET_RUNNER} - SENTRY_DSN=${OPENDC_SIMULATOR_SENTRY_DSN-} - SENTRY_ENVIRONMENT mongo: build: database restart: on-failure environment: - MONGO_INITDB_ROOT_USERNAME - MONGO_INITDB_ROOT_PASSWORD - MONGO_INITDB_DATABASE - OPENDC_DB - OPENDC_DB_USERNAME - OPENDC_DB_PASSWORD networks: - backend volumes: - mongo-volume:/data/db volumes: mongo-volume: networks: backend: {}