diff options
| author | Fabian Mastenbroek <mail.fabianm@gmail.com> | 2022-07-30 12:15:10 +0200 |
|---|---|---|
| committer | Fabian Mastenbroek <mail.fabianm@gmail.com> | 2022-08-03 11:54:44 +0200 |
| commit | a01f964b531f12fd89cbdb0f2132aecbfaebf546 (patch) | |
| tree | 4a2c3795d3d1ae394e9ab785b9229ab6e14ccbdf /docker-compose.yml | |
| parent | 41b0ed59421b301bac652e47d1a2909145aa5936 (diff) | |
refactor(web/server): Create standalone OpenDC distribution
This change updates the Quarkus configuration of the OpenDC web server
to serve as a fully standalone distribution that is capable of serving
the web UI, web API, and experiment runner. Such an approach vastly
simplifies local deployments.
For Docker deployments, we create a custom Quarkus profile that uses
PostgreSQL and disables the web UI.
Diffstat (limited to 'docker-compose.yml')
| -rw-r--r-- | docker-compose.yml | 38 |
1 files changed, 13 insertions, 25 deletions
diff --git a/docker-compose.yml b/docker-compose.yml index faaecc03..a6d6ce1d 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,51 +1,39 @@ version: "3.8" services: - frontend: - image: atlargeresearch/opendc-web-ui:v2.1 + ui: + image: atlargeresearch/opendc-ui:v2.1 restart: on-failure networks: - backend depends_on: - - api + - server 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-} + NEXT_PUBLIC_SENTRY_DSN: ${OPENDC_UI_SENTRY_DSN-} - api: - image: atlargeresearch/opendc-web-api:v2.1 + server: + image: atlargeresearch/opendc:v2.1 restart: on-failure networks: - backend depends_on: - postgres + volumes: + - type: bind + source: ./traces + target: /opt/opendc/traces environment: OPENDC_DB_USERNAME: ${OPENDC_DB_USERNAME:?No database username specified} OPENDC_DB_PASSWORD: ${OPENDC_DB_PASSWORD:?No database password specified} OPENDC_DB_URL: jdbc:postgresql://postgres:5432/opendc OPENDC_AUTH0_DOMAIN: ${OPENDC_AUTH0_DOMAIN:?No Auth0 domain specified} OPENDC_AUTH0_AUDIENCE: ${OPENDC_AUTH0_AUDIENCE:?No Auth0 audience specified} - SENTRY_DSN: ${OPENDC_API_SENTRY_DSN-} - - runner: - image: atlargeresearch/opendc:v2.1 - restart: on-failure - networks: - - backend - depends_on: - - api - volumes: - - type: bind - source: ./traces - target: /opt/opendc/traces - environment: OPENDC_API_URL: ${OPENDC_API_BASE_URL:-http://web:8080} - AUTH0_DOMAIN: ${OPENDC_AUTH0_DOMAIN:?No Auth0 domain specified} - AUTH0_AUDIENCE: ${OPENDC_AUTH0_AUDIENCE:?No Auth0 audience specified} - AUTH0_CLIENT_ID: ${OPENDC_AUTH0_CLIENT_ID_RUNNER:?No client id for runner} - AUTH0_CLIENT_SECRET: ${OPENDC_AUTH0_CLIENT_SECRET_RUNNER:?No client secret for runner} - SENTRY_DSN: ${OPENDC_SIMULATOR_SENTRY_DSN-} + OPENDC_AUTH0_CLIENT_ID_RUNNER: ${OPENDC_AUTH0_CLIENT_ID_RUNNER:?No client id for runner} + OPENDC_AUTH0_CLIENT_SECRET_RUNNER: ${OPENDC_AUTH0_CLIENT_SECRET_RUNNER:?No client secret for runner} + SENTRY_DSN: ${OPENDC_SERVER_SENTRY_DSN-} postgres: image: postgres |
