Files
linux-odyssey/docker-compose.prod.yml
T

88 lines
1.9 KiB
YAML

version: '3'
services:
app:
image: lancatlin/linux-odyssey:app
build:
context: .
dockerfile: app/Dockerfile
target: prod
networks:
internal:
ports:
- 8080:80
backend:
image: lancatlin/linux-odyssey:backend
restart: on-failure
build:
context: .
dockerfile: server/Dockerfile
target: prod
networks:
- internal
- players
volumes:
- /var/run/docker.sock:/var/run/docker.sock
env_file:
- .env
environment:
- MONGO_URL=mongodb://user:user-password@db:27017/odyssey-test
- DOCKER_NETWORK=linux-odyssey-players
analytics:
image: lancatlin/linux-odyssey:analytics
build:
context: .
dockerfile: packages/analytics/Dockerfile
target: prod
depends_on:
- db
networks:
- internal
ports:
- '3001:3001'
environment:
- MONGO_URL=mongodb://user:user-password@db:27017/odyssey-test
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:
- BASE_URL=${BASE_URL}
- MONGO_INITDB_ROOT_USERNAME=admin
- MONGO_INITDB_ROOT_PASSWORD=admin-password
- MONGO_USER=user
- MONGO_PASS=user-password
- MONGO_DB=odyssey-test
- GOOGLE_CLIENT_ID=${GOOGLE_CLIENT_ID}
- GOOGLE_CLIENT_SECRET=${GOOGLE_CLIENT_SECRET}
- GITHUB_CLIENT_ID=${GITHUB_CLIENT_ID}
- GITHUB_CLIENT_SECRET=${GITHUB_CLIENT_SECRET}
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
internal: true
volumes:
mongo: