Files
rush-character-archive/docker-compose.yaml

82 lines
2.1 KiB
YAML

services:
proxy:
image: traefik
command: --providers.docker
ports:
- 80:80
volumes:
- /var/run/docker.sock:/var/run/docker.sock
frontend:
build:
context: ./
dockerfile: ./frontend/Dockerfile
command: npm run dev
develop:
watch:
- action: sync
path: ./frontend
target: /srv/frontend
ignore:
- node_modules
- action: rebuild
path: ./frontend/package.json
- action: rebuild
path: ./frontend/Dockerfile
labels:
traefik.http.routers.client.rule: "Host(`localhost`)"
ports:
- 8080:3000
vault:
build:
context: ./
dockerfile: ./vault/Dockerfile
command: npm run dev
environment:
MONGO_URI: mongodb://rushvault:rushvault@mongo:27017/
depends_on:
- mongo
develop:
watch:
- action: sync
path: ./vault
target: /srv/vault
ignore:
- node_modules
- action: rebuild
path: ./vault/package.json
- action: rebuild
path: ./vault/Dockerfile
ports:
- 8081:8080
labels:
traefik.http.routers.api.rule: "Host(`localhost`) && PathPrefix(`/api`)"
traefik.http.services.api.loadbalancer.server.scheme: "h2c"
traefik.http.routers.api.middlewares: "api-stripprefix,api-grpcweb"
traefik.http.middlewares.api-stripprefix.stripprefix.prefixes: "/api"
traefik.http.middlewares.api-grpcweb.grpcWeb.allowOrigins: "*"
mongo:
image: mongo
restart: always
environment:
MONGO_INITDB_ROOT_USERNAME: rushvault
MONGO_INITDB_ROOT_PASSWORD: rushvault
MONGO_INITDB_DATABASE: DB
mongo-express:
image: mongo-express
restart: always
depends_on:
- mongo
environment:
ME_CONFIG_MONGODB_ADMINUSERNAME: rushvault
ME_CONFIG_MONGODB_ADMINPASSWORD: rushvault
ME_CONFIG_MONGODB_URL: mongodb://rushvault:rushvault@mongo:27017/
ME_CONFIG_BASICAUTH: false
labels:
traefik.http.routers.mexp.rule: "Host(`mexp.localhost`)"
ports:
- 8082:8081