version: '3.8' services: rocketchat: platform: linux/amd64 build: dockerfile: ${RC_DOCKERFILE} context: /tmp/build image: ghcr.io/${LOWERCASE_REPOSITORY}/rocket.chat:${RC_DOCKER_TAG} environment: - TEST_MODE=true - EXIT_UNHANDLEDPROMISEREJECTION=true - 'MONGO_URL=${MONGO_URL}' - 'MONGO_OPLOG_URL=${MONGO_OPLOG_URL}' - 'TRANSPORTER=${TRANSPORTER}' - MOLECULER_LOG_LEVEL=info - 'ROCKETCHAT_LICENSE=${ENTERPRISE_LICENSE}' - OVERWRITE_SETTING_Log_Level=2 extra_hosts: - 'host.docker.internal:host-gateway' depends_on: - traefik - mongo labels: traefik.enable: true traefik.http.services.rocketchat.loadbalancer.server.port: 3000 traefik.http.routers.rocketchat.service: rocketchat traefik.http.routers.rocketchat.rule: PathPrefix(`/`) authorization-service: platform: linux/amd64 build: dockerfile: ee/apps/authorization-service/Dockerfile args: SERVICE: authorization-service image: ghcr.io/${LOWERCASE_REPOSITORY}/authorization-service:${DOCKER_TAG} environment: - 'MONGO_URL=${MONGO_URL}' - 'TRANSPORTER=${TRANSPORTER}' - MOLECULER_LOG_LEVEL=info extra_hosts: - 'host.docker.internal:host-gateway' depends_on: - nats account-service: platform: linux/amd64 build: dockerfile: ee/apps/account-service/Dockerfile args: SERVICE: account-service image: ghcr.io/${LOWERCASE_REPOSITORY}/account-service:${DOCKER_TAG} environment: - MONGO_URL=${MONGO_URL} - 'TRANSPORTER=${TRANSPORTER}' - MOLECULER_LOG_LEVEL=info extra_hosts: - 'host.docker.internal:host-gateway' depends_on: - nats presence-service: platform: linux/amd64 build: dockerfile: ee/apps/presence-service/Dockerfile args: SERVICE: presence-service image: ghcr.io/${LOWERCASE_REPOSITORY}/presence-service:${DOCKER_TAG} environment: - MONGO_URL=${MONGO_URL} - 'TRANSPORTER=${TRANSPORTER}' - MOLECULER_LOG_LEVEL=info extra_hosts: - 'host.docker.internal:host-gateway' depends_on: - nats ddp-streamer-service: platform: linux/amd64 build: dockerfile: ee/apps/ddp-streamer/Dockerfile args: SERVICE: ddp-streamer image: ghcr.io/${LOWERCASE_REPOSITORY}/ddp-streamer-service:${DOCKER_TAG} environment: - MONGO_URL=${MONGO_URL} - 'TRANSPORTER=${TRANSPORTER}' - MOLECULER_LOG_LEVEL=info extra_hosts: - 'host.docker.internal:host-gateway' depends_on: - nats - traefik labels: traefik.enable: true traefik.http.services.ddp-streamer-service.loadbalancer.server.port: 3000 traefik.http.routers.ddp-streamer-service.service: ddp-streamer-service traefik.http.routers.ddp-streamer-service.rule: PathPrefix(`/websocket`) || PathPrefix(`/sockjs`) stream-hub-service: platform: linux/amd64 build: dockerfile: ee/apps/stream-hub-service/Dockerfile args: SERVICE: stream-hub-service image: ghcr.io/${LOWERCASE_REPOSITORY}/stream-hub-service:${DOCKER_TAG} environment: - MONGO_URL=${MONGO_URL} - 'TRANSPORTER=${TRANSPORTER}' - MOLECULER_LOG_LEVEL=info extra_hosts: - 'host.docker.internal:host-gateway' depends_on: - nats queue-worker-service: platform: linux/amd64 build: dockerfile: ee/apps/queue-worker/Dockerfile args: SERVICE: queue-worker image: ghcr.io/${LOWERCASE_REPOSITORY}/queue-worker-service:${DOCKER_TAG} environment: - MONGO_URL=${MONGO_URL} - 'TRANSPORTER=${TRANSPORTER}' - MOLECULER_LOG_LEVEL=info extra_hosts: - 'host.docker.internal:host-gateway' depends_on: - nats omnichannel-transcript-service: platform: linux/amd64 build: dockerfile: ee/apps/omnichannel-transcript/Dockerfile args: SERVICE: omnichannel-transcript image: ghcr.io/${LOWERCASE_REPOSITORY}/omnichannel-transcript-service:${DOCKER_TAG} environment: - MONGO_URL=${MONGO_URL} - 'TRANSPORTER=${TRANSPORTER}' - MOLECULER_LOG_LEVEL=info extra_hosts: - 'host.docker.internal:host-gateway' depends_on: - nats mongo: image: docker.io/bitnami/mongodb:7.0 restart: on-failure environment: MONGODB_REPLICA_SET_MODE: primary MONGODB_REPLICA_SET_NAME: ${MONGODB_REPLICA_SET_NAME:-rs0} MONGODB_PORT_NUMBER: ${MONGODB_PORT_NUMBER:-27017} MONGODB_INITIAL_PRIMARY_HOST: ${MONGODB_INITIAL_PRIMARY_HOST:-mongo} MONGODB_INITIAL_PRIMARY_PORT_NUMBER: ${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017} MONGODB_ADVERTISED_HOSTNAME: ${MONGODB_ADVERTISED_HOSTNAME:-mongo} MONGODB_ENABLE_JOURNAL: ${MONGODB_ENABLE_JOURNAL:-true} ALLOW_EMPTY_PASSWORD: ${ALLOW_EMPTY_PASSWORD:-yes} nats: image: nats:2.6-alpine traefik: image: traefik:v2.8 command: - --providers.docker=true ports: - 3000:80 volumes: - /var/run/docker.sock:/var/run/docker.sock