Created
April 5, 2025 19:13
-
-
Save LambdaDigamma/75f841d0e34eb51b644134d3cf0db122 to your computer and use it in GitHub Desktop.
Openslides Docker Configuration
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| # Name of the generated YAML file. | |
| filename: docker-compose.yml | |
| # The OpenSlides proxy service listens on this address. | |
| host: 0.0.0.0 | |
| port: 443 | |
| # General global options | |
| disablePostgres: false | |
| disableDependsOn: false | |
| enableLocalHTTPS: false | |
| enableAutoHTTPS: true | |
| # Defaults for all OpenSlides services. | |
| defaults: | |
| containerRegistry: ghcr.io/openslides/openslides | |
| tag: latest | |
| # These environment variables are injected into every OpenSlides service | |
| # via YAML merge type (https://yaml.org/type/merge.html). | |
| defaultEnvironment: | |
| ACTION_HOST: backendAction | |
| ACTION_PORT: 9002 | |
| PRESENTER_HOST: backendPresenter | |
| PRESENTER_PORT: 9003 | |
| DATASTORE_READER_HOST: datastoreReader | |
| DATASTORE_READER_PORT: 9010 | |
| DATASTORE_WRITER_HOST: datastoreWriter | |
| DATASTORE_WRITER_PORT: 9011 | |
| AUTOUPDATE_HOST: autoupdate | |
| AUTOUPDATE_PORT: 9012 | |
| AUTH_HOST: auth | |
| AUTH_PORT: 9004 | |
| SEARCH_HOST: search | |
| SEARCH_PORT: 9050 | |
| RESTRICTER_URL: http://autoupdate:9012/internal/autoupdate | |
| VOTE_HOST: vote | |
| VOTE_PORT: 9013 | |
| CACHE_HOST: redis | |
| CACHE_PORT: 6379 | |
| MESSAGE_BUS_HOST: redis | |
| MESSAGE_BUS_PORT: 6379 | |
| MEDIA_HOST: media | |
| MEDIA_PORT: 9006 | |
| ICC_HOST: icc | |
| ICC_PORT: 9007 | |
| MANAGE_HOST: manage | |
| MANAGE_PORT: 9008 | |
| DATABASE_HOST: postgres | |
| DATABASE_PORT: 5432 | |
| DATABASE_NAME: openslides | |
| DATABASE_USER: openslides | |
| DATABASE_PASSWORD_FILE: /run/secrets/postgres_password | |
| MEDIA_DATABASE_HOST: postgres | |
| MEDIA_DATABASE_PORT: 5432 | |
| MEDIA_DATABASE_NAME: openslides | |
| MEDIA_DATABASE_USER: openslides | |
| MEDIA_DATABASE_PASSWORD_FILE: /run/secrets/postgres_password | |
| VOTE_DATABASE_HOST: postgres | |
| VOTE_DATABASE_PORT: 5432 | |
| VOTE_DATABASE_NAME: openslides | |
| VOTE_DATABASE_USER: openslides | |
| VOTE_DATABASE_PASSWORD_FILE: /run/secrets/postgres_password | |
| INTERNAL_AUTH_PASSWORD_FILE: /run/secrets/internal_auth_password | |
| MANAGE_AUTH_PASSWORD_FILE: /run/secrets/manage_auth_password | |
| AUTH_TOKEN_KEY_FILE: /run/secrets/auth_token_key | |
| AUTH_COOKIE_KEY_FILE: /run/secrets/auth_cookie_key | |
| SUPERADMIN_PASSWORD_FILE: /run/secrets/superadmin | |
| OPENSLIDES_LOGLEVEL: info | |
| OPENSLIDES_DEVELOPMENT: "false" | |
| # You can extend or replace parts of the defaultEnvironment. | |
| # | |
| # Example: | |
| # | |
| # defaultEnvironment: | |
| # SOME_ENV_VAR: my value | |
| # You can customize single services using the services property. | |
| services: | |
| datastoreReader: | |
| environment: | |
| NUM_WORKERS: 8 | |
| backendManage: | |
| environment: | |
| OPENSLIDES_BACKEND_CREATE_INITIAL_DATA: 1 | |
| manage: | |
| environment: | |
| ACTION_HOST: backendManage | |
| services: | |
| proxy: | |
| environment: | |
| EXTERNAL_ADDRESS: openslides.moers.app | |
| # Use letsencrypt staging environment for testing | |
| # ACME_ENDPOINT: https://acme-staging-v02.api.letsencrypt.org/directory | |
| # All properties from the "defaults" section are available here. | |
| # | |
| # Example: | |
| # | |
| # services: | |
| # datastoreReader: | |
| # tag: my-tag | |
| # autoupdate: | |
| # containerRegistry: example.com/my-registry | |
| # You can also extend or replace parts of the environment. | |
| # | |
| # Example: | |
| # | |
| # services: | |
| # datastoreReader: | |
| # environment | |
| # NUM_WORKERS: 8 | |
| # You can also define some additional content for all services. This will just | |
| # add the object to the respective service blob. | |
| # | |
| # Example: | |
| # | |
| # services: | |
| # autoupdate: | |
| # additionalContent: | |
| # deploy: | |
| # replicas: 4 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| version: "3.4" | |
| x-default-environment: &default-environment | |
| ACTION_HOST: backendAction | |
| ACTION_PORT: "9002" | |
| AUTH_COOKIE_KEY_FILE: /run/secrets/auth_cookie_key | |
| AUTH_HOST: auth | |
| AUTH_PORT: "9004" | |
| AUTH_TOKEN_KEY_FILE: /run/secrets/auth_token_key | |
| AUTOUPDATE_HOST: autoupdate | |
| AUTOUPDATE_PORT: "9012" | |
| CACHE_HOST: redis | |
| CACHE_PORT: "6379" | |
| DATABASE_HOST: postgres | |
| DATABASE_NAME: openslides | |
| DATABASE_PASSWORD_FILE: /run/secrets/postgres_password | |
| DATABASE_PORT: "5432" | |
| DATABASE_USER: openslides | |
| DATASTORE_READER_HOST: datastoreReader | |
| DATASTORE_READER_PORT: "9010" | |
| DATASTORE_WRITER_HOST: datastoreWriter | |
| DATASTORE_WRITER_PORT: "9011" | |
| ICC_HOST: icc | |
| ICC_PORT: "9007" | |
| INTERNAL_AUTH_PASSWORD_FILE: /run/secrets/internal_auth_password | |
| MANAGE_AUTH_PASSWORD_FILE: /run/secrets/manage_auth_password | |
| MANAGE_HOST: manage | |
| MANAGE_PORT: "9008" | |
| MEDIA_DATABASE_HOST: postgres | |
| MEDIA_DATABASE_NAME: openslides | |
| MEDIA_DATABASE_PASSWORD_FILE: /run/secrets/postgres_password | |
| MEDIA_DATABASE_PORT: "5432" | |
| MEDIA_DATABASE_USER: openslides | |
| MEDIA_HOST: media | |
| MEDIA_PORT: "9006" | |
| MESSAGE_BUS_HOST: redis | |
| MESSAGE_BUS_PORT: "6379" | |
| OPENSLIDES_DEVELOPMENT: "false" | |
| OPENSLIDES_LOGLEVEL: info | |
| PRESENTER_HOST: backendPresenter | |
| PRESENTER_PORT: "9003" | |
| RESTRICTER_URL: http://autoupdate:9012/internal/autoupdate | |
| SEARCH_HOST: search | |
| SEARCH_PORT: "9050" | |
| SUPERADMIN_PASSWORD_FILE: /run/secrets/superadmin | |
| VOTE_DATABASE_HOST: postgres | |
| VOTE_DATABASE_NAME: openslides | |
| VOTE_DATABASE_PASSWORD_FILE: /run/secrets/postgres_password | |
| VOTE_DATABASE_PORT: "5432" | |
| VOTE_DATABASE_USER: openslides | |
| VOTE_HOST: vote | |
| VOTE_PORT: "9013" | |
| services: | |
| proxy: | |
| image: ghcr.io/openslides/openslides/openslides-proxy:latest | |
| depends_on: | |
| - client | |
| - backendAction | |
| - backendPresenter | |
| - autoupdate | |
| - search | |
| - auth | |
| - media | |
| - icc | |
| - vote | |
| environment: | |
| << : *default-environment | |
| EXTERNAL_ADDRESS: openslides.moers.app | |
| ENABLE_AUTO_HTTPS: 1 | |
| networks: | |
| - uplink | |
| - frontend | |
| ports: | |
| - 0.0.0.0:443:8000 | |
| - 0.0.0.0:80:8001 | |
| client: | |
| image: ghcr.io/openslides/openslides/openslides-client:latest | |
| depends_on: | |
| - backendAction | |
| - backendPresenter | |
| - autoupdate | |
| - search | |
| - auth | |
| - media | |
| - icc | |
| - vote | |
| environment: | |
| << : *default-environment | |
| networks: | |
| - frontend | |
| backendAction: | |
| image: ghcr.io/openslides/openslides/openslides-backend:latest | |
| depends_on: | |
| - datastoreWriter | |
| - auth | |
| - media | |
| - vote | |
| - postgres | |
| environment: | |
| << : *default-environment | |
| OPENSLIDES_BACKEND_COMPONENT: action | |
| networks: | |
| - frontend | |
| - data | |
| secrets: | |
| - auth_token_key | |
| - auth_cookie_key | |
| - internal_auth_password | |
| - postgres_password | |
| backendPresenter: | |
| image: ghcr.io/openslides/openslides/openslides-backend:latest | |
| depends_on: | |
| - auth | |
| - postgres | |
| environment: | |
| << : *default-environment | |
| OPENSLIDES_BACKEND_COMPONENT: presenter | |
| networks: | |
| - frontend | |
| - data | |
| secrets: | |
| - auth_token_key | |
| - auth_cookie_key | |
| - postgres_password | |
| backendManage: | |
| image: ghcr.io/openslides/openslides/openslides-backend:latest | |
| depends_on: | |
| - datastoreWriter | |
| - postgres | |
| environment: | |
| << : *default-environment | |
| OPENSLIDES_BACKEND_CREATE_INITIAL_DATA: "1" | |
| OPENSLIDES_BACKEND_COMPONENT: action | |
| networks: | |
| - data | |
| secrets: | |
| - auth_token_key | |
| - auth_cookie_key | |
| - internal_auth_password | |
| - postgres_password | |
| - superadmin | |
| datastoreReader: | |
| image: ghcr.io/openslides/openslides/openslides-datastore-reader:latest | |
| depends_on: | |
| - postgres | |
| environment: | |
| << : *default-environment | |
| NUM_WORKERS: "8" | |
| networks: | |
| - data | |
| secrets: | |
| - postgres_password | |
| datastoreWriter: | |
| image: ghcr.io/openslides/openslides/openslides-datastore-writer:latest | |
| depends_on: | |
| - postgres | |
| - redis | |
| environment: | |
| << : *default-environment | |
| networks: | |
| - data | |
| secrets: | |
| - postgres_password | |
| postgres: | |
| image: postgres:15 | |
| environment: | |
| << : *default-environment | |
| POSTGRES_DB: openslides | |
| POSTGRES_USER: openslides | |
| POSTGRES_PASSWORD_FILE: /run/secrets/postgres_password | |
| volumes: | |
| - postgres-data:/var/lib/postgresql/data | |
| networks: | |
| - data | |
| secrets: | |
| - postgres_password | |
| autoupdate: | |
| image: ghcr.io/openslides/openslides/openslides-autoupdate:latest | |
| depends_on: | |
| - datastoreReader | |
| - redis | |
| environment: | |
| << : *default-environment | |
| networks: | |
| - frontend | |
| - data | |
| secrets: | |
| - auth_token_key | |
| - auth_cookie_key | |
| - postgres_password | |
| search: | |
| image: ghcr.io/openslides/openslides/openslides-search:latest | |
| depends_on: | |
| - datastoreReader | |
| - postgres | |
| - autoupdate | |
| environment: | |
| << : *default-environment | |
| networks: | |
| - frontend | |
| - data | |
| secrets: | |
| - auth_token_key | |
| - auth_cookie_key | |
| - postgres_password | |
| auth: | |
| image: ghcr.io/openslides/openslides/openslides-auth:latest | |
| depends_on: | |
| - datastoreReader | |
| - redis | |
| environment: | |
| << : *default-environment | |
| networks: | |
| - frontend | |
| - data | |
| secrets: | |
| - auth_token_key | |
| - auth_cookie_key | |
| - internal_auth_password | |
| vote: | |
| image: ghcr.io/openslides/openslides/openslides-vote:latest | |
| depends_on: | |
| - datastoreReader | |
| - auth | |
| - autoupdate | |
| - redis | |
| environment: | |
| << : *default-environment | |
| networks: | |
| - frontend | |
| - data | |
| secrets: | |
| - auth_token_key | |
| - auth_cookie_key | |
| - postgres_password | |
| redis: | |
| image: redis:alpine | |
| command: redis-server --save "" | |
| environment: | |
| << : *default-environment | |
| networks: | |
| - data | |
| media: | |
| image: ghcr.io/openslides/openslides/openslides-media:latest | |
| depends_on: | |
| - postgres | |
| environment: | |
| << : *default-environment | |
| networks: | |
| - frontend | |
| - data | |
| secrets: | |
| - auth_token_key | |
| - auth_cookie_key | |
| - postgres_password | |
| icc: | |
| image: ghcr.io/openslides/openslides/openslides-icc:latest | |
| depends_on: | |
| - datastoreReader | |
| - postgres | |
| - redis | |
| environment: | |
| << : *default-environment | |
| networks: | |
| - frontend | |
| - data | |
| secrets: | |
| - auth_token_key | |
| - auth_cookie_key | |
| - postgres_password | |
| manage: | |
| image: ghcr.io/openslides/openslides/openslides-manage:latest | |
| depends_on: | |
| - datastoreReader | |
| - backendManage | |
| environment: | |
| << : *default-environment | |
| ACTION_HOST: backendManage | |
| networks: | |
| - frontend | |
| - data | |
| secrets: | |
| - superadmin | |
| - manage_auth_password | |
| - internal_auth_password | |
| networks: | |
| uplink: | |
| internal: false | |
| email: | |
| internal: false | |
| frontend: | |
| internal: true | |
| data: | |
| internal: true | |
| volumes: | |
| postgres-data: | |
| secrets: | |
| auth_token_key: | |
| file: ./secrets/auth_token_key | |
| auth_cookie_key: | |
| file: ./secrets/auth_cookie_key | |
| superadmin: | |
| file: ./secrets/superadmin | |
| manage_auth_password: | |
| file: ./secrets/manage_auth_password | |
| internal_auth_password: | |
| file: ./secrets/internal_auth_password | |
| postgres_password: | |
| file: ./secrets/postgres_password |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment