OpenSlides/docker/docker-compose.dev.yml
Sean Engelhardt 6846b2ab91 Add vote service to OS4 setup
Integrate vote service, makes according changes to configuration
Updates the client to integrate the vote service
Updates the backend to integrate the vote service
2021-11-17 23:32:40 +01:00

178 lines
4.2 KiB
YAML

version: "3"
services:
datastore-reader:
image: openslides-datastore-reader-dev
depends_on:
- postgres
env_file: services.env
environment:
- DATASTORE_ENABLE_DEV_ENVIRONMENT=1
- NUM_WORKERS=8
- OPENSLIDES_DEVELOPMENT=1
volumes:
- ../openslides-datastore-service/datastore:/app/datastore
ports:
- 9010:9010
datastore-writer:
image: openslides-datastore-writer-dev
depends_on:
- postgres
- message-bus
env_file: services.env
volumes:
- ../openslides-datastore-service/datastore:/app/datastore
- ../openslides-datastore-service/cli:/app/cli
environment:
- DATASTORE_ENABLE_DEV_ENVIRONMENT=1
- COMMAND=create_initial_data
- DATASTORE_INITIAL_DATA_FILE=https://raw.githubusercontent.com/OpenSlides/openslides-backend/master/global/data/example-data.json
- OPENSLIDES_DEVELOPMENT=1
ports:
- 9011:9011
postgres:
image: postgres:11
environment:
- POSTGRES_USER=openslides
- POSTGRES_PASSWORD=openslides
- POSTGRES_DB=openslides
client:
image: openslides-client-dev
depends_on:
- backend
- autoupdate
env_file: services.env
environment:
- OPENSLIDES_DEVELOPMENT=1
volumes:
- ../openslides-client/client/src:/app/src
backend:
image: openslides-backend-dev
depends_on:
- datastore-reader
- datastore-writer
- auth
env_file: services.env
environment:
- OPENSLIDES_DEVELOPMENT=1
- EMAIL_HOST=mailhog
- EMAIL_PORT=1025
# - EMAIL_HOST_USER username
# - EMAIL_HOST_PASSWORD secret
# EMAIL_CONNECTION_SECURITY use NONE, STARTTLS or SSL/TLS
- EMAIL_CONNECTION_SECURITY=NONE
- EMAIL_TIMEOUT=5
- EMAIL_ACCEPT_SELF_SIGNED_CERTIFICATE=false
- DEFAULT_FROM_EMAIL=noreply@example.com
volumes:
- ../openslides-backend/openslides_backend:/app/openslides_backend
- ../openslides-backend/migrations:/app/migrations
autoupdate:
image: openslides-autoupdate-dev
depends_on:
- datastore-reader
- message-bus
env_file: services.env
environment:
- OPENSLIDES_DEVELOPMENT=1
volumes:
- ../openslides-autoupdate-service/cmd:/root/cmd
- ../openslides-autoupdate-service/internal:/root/internal
- ../openslides-autoupdate-service/pkg:/root/pkg
icc:
image: openslides-icc-dev
depends_on:
- datastore-reader
- message-bus
- auth
env_file: services.env
environment:
- OPENSLIDES_DEVELOPMENT=1
volumes:
- ../openslides-icc-service/cmd:/root/cmd
- ../openslides-icc-service/internal:/root/internal
auth:
image: openslides-auth-dev
depends_on:
- datastore-reader
- cache
env_file: services.env
environment:
- OPENSLIDES_DEVELOPMENT=1
volumes:
- ../openslides-auth-service/auth/src:/app/src
cache:
image: redis:latest
media:
image: openslides-media-dev
depends_on:
- backend
- postgres
env_file: services.env
environment:
- OPENSLIDES_DEVELOPMENT=1
volumes:
- ../openslides-media-service/src:/app/src
manage:
image: openslides-manage-dev
depends_on:
- auth
- datastore-writer
env_file: services.env
environment:
- OPENSLIDES_DEVELOPMENT=1
ports:
- "9008:9008"
message-bus:
image: redis:latest
proxy:
image: openslides-proxy-dev
depends_on:
- client
- backend
- autoupdate
ports:
- "8000:8000"
mailhog:
image: mailhog/mailhog
logging:
driver: "none" # disable saving logs
ports:
- "8025:8025" # web ui to check mails manually
vote:
image: openslides-vote-dev
depends_on:
- auth
- message-bus
- datastore-reader
- postgres
environment:
- OPENSLIDES_DEVELOPMENT=true
- VOTE_HOST=vote
- VOTE_PORT=9013
- DATASTORE_READER_HOST=datastore-reader
- MESSAGING=redis
- MESSAGE_BUS_HOST=message-bus
- VOTE_REDIS_HOST=cache
- VOTE_DATABASE_HOST=postgres
- VOTE_DATABASE_USER=openslides
- VOTE_DATABASE_PASSWORD=openslides
- VOTE_DATABASE_NAME=openslides
- AUTH=ticket
- AUTH_HOST=auth
ports:
- "9013:9013"