version: '3' services: app: image: lancatlin/linux-odyssey:app build: context: . dockerfile: app/Dockerfile networks: internal: ports: - 8080:80 backend: image: lancatlin/linux-odyssey:backend restart: on-failure build: context: . dockerfile: server/Dockerfile networks: - internal - players volumes: - /var/run/docker.sock:/var/run/docker.sock environment: - MONGO_URL=mongodb://user:user-password@db:27017/odyssey-test - DOCKER_NETWORK=linux-odyssey-players db: image: mongo restart: always networks: - internal ports: - '27017:27017' volumes: - mongo:/data/db - ./mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro environment: - MONGO_INITDB_ROOT_USERNAME=admin - MONGO_INITDB_ROOT_PASSWORD=admin-password - MONGO_USER=user - MONGO_PASS=user-password - MONGO_DB=odyssey-test base: image: lancatlin/linux-odyssey:base build: context: . dockerfile: ./quests/Dockerfile helloworld: image: lancatlin/linux-odyssey:helloworld build: context: . dockerfile: quests/helloworld/Dockerfile networks: internal: players: name: linux-odyssey-players volumes: mongo: