version: "3.5" services: front: image: thecodingmachine/nodejs:14 environment: DEBUG_MODE: "$DEBUG_MODE" JITSI_URL: $JITSI_URL JITSI_PRIVATE_MODE: "$JITSI_PRIVATE_MODE" HOST: "0.0.0.0" NODE_ENV: development PUSHER_URL: "//pusher.$DOMAIN" UPLOADER_URL: "//uploader.$DOMAIN" ICON_URL: "//icon.$DOMAIN" STARTUP_COMMAND_1: ./templater.sh STARTUP_COMMAND_2: yarn install STUN_SERVER: "stun:stun.l.google.com:19302" TURN_SERVER: "turn:coturn.workadventu.re:443,turns:coturn.workadventu.re:443" DISABLE_NOTIFICATIONS: "$DISABLE_NOTIFICATIONS" SKIP_RENDER_OPTIMIZATIONS: "$SKIP_RENDER_OPTIMIZATIONS" # Use TURN_USER/TURN_PASSWORD if your Coturn server is secured via hard coded credentials. # Advice: you should instead use Coturn REST API along the TURN_STATIC_AUTH_SECRET in the Back container TURN_USER: "" TURN_PASSWORD: "" START_ROOM_URL: "$START_ROOM_URL" MAX_PER_GROUP: "$MAX_PER_GROUP" MAX_USERNAME_LENGTH: "$MAX_USERNAME_LENGTH" DISABLE_ANONYMOUS: "$DISABLE_ANONYMOUS" OPID_LOGIN_SCREEN_PROVIDER: "$OPID_LOGIN_SCREEN_PROVIDER" LIVE_RELOAD: "$LIVE_RELOAD:-true" command: yarn run build volumes: - ./src/front:/usr/src/app pusher: image: thecodingmachine/nodejs:14 command: yarn run prod environment: DEBUG: "socket:*" STARTUP_COMMAND_1: yarn install # wait for files generated by "messages" container to exists STARTUP_COMMAND_2: while [ ! -f /usr/src/app/src/Messages/generated/messages_pb.js ]; do sleep 1; done SECRET_JITSI_KEY: "$SECRET_JITSI_KEY" SECRET_KEY: yourSecretKey ADMIN_API_TOKEN: "$ADMIN_API_TOKEN" API_URL: back:50051 JITSI_URL: $JITSI_URL JITSI_ISS: $JITSI_ISS FRONT_URL: "https://play.$DOMAIN" OPID_CLIENT_ID: $OPID_CLIENT_ID OPID_CLIENT_SECRET: $OPID_CLIENT_SECRET OPID_CLIENT_ISSUER: $OPID_CLIENT_ISSUER OPID_CLIENT_REDIRECT_URL: $OPID_CLIENT_REDIRECT_URL OPID_PROFILE_SCREEN_PROVIDER: $OPID_PROFILE_SCREEN_PROVIDER DISABLE_ANONYMOUS: $DISABLE_ANONYMOUS volumes: - ./src/pusher:/usr/src/app ports: - "127.0.0.1:8002:8080" back: image: thecodingmachine/nodejs:12 command: yarn run prod environment: DEBUG: "*" STARTUP_COMMAND_1: yarn install # wait for files generated by "messages" container to exists STARTUP_COMMAND_2: while [ ! -f /usr/src/app/src/Messages/generated/messages_pb.js ]; do sleep 1; done SECRET_KEY: yourSecretKey SECRET_JITSI_KEY: "$SECRET_JITSI_KEY" ALLOW_ARTILLERY: "true" ADMIN_API_TOKEN: "$ADMIN_API_TOKEN" JITSI_URL: $JITSI_URL JITSI_ISS: $JITSI_ISS TURN_STATIC_AUTH_SECRET: SomeStaticAuthSecret MAX_PER_GROUP: "MAX_PER_GROUP" #REDIS_HOST: "localhost" NODE_ENV: development STORE_VARIABLES_FOR_LOCAL_MAPS: "true" volumes: - ./src/back:/usr/src/app uploader: image: thecodingmachine/nodejs:12 command: yarn run prod environment: DEBUG: "*" STARTUP_COMMAND_1: yarn install volumes: - ./src/uploader:/usr/src/app ports: - "127.0.0.1:8005:8080" messages: image: thecodingmachine/workadventure-back-base:latest environment: #STARTUP_COMMAND_0: sudo apt-get install -y inotify-tools STARTUP_COMMAND_1: yarn install STARTUP_COMMAND_2: yarn run proto:watch volumes: - ./src/messages:/usr/src/app - ./src/back:/usr/src/back - ./src/front:/usr/src/front - ./src/pusher:/usr/src/pusher icon: image: matthiasluedtke/iconserver:v3.13.0 ports: - "127.0.0.1:8006:8080"