60 lines
2.0 KiB
YAML
60 lines
2.0 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
auth-service_mongo:
|
|
container_name: ${CONTAINER_PREFIX}-auth-service_mongo
|
|
networks:
|
|
- auth-backend
|
|
- docknet
|
|
volumes:
|
|
- auth-db:/data/db
|
|
- auth-db:/data/configdb
|
|
restart: unless-stopped
|
|
image: mongo:${MONGO_VERSION}
|
|
auth-service:
|
|
container_name: ${CONTAINER_PREFIX}-auth-service
|
|
environment:
|
|
- DB_HOST=${CONTAINER_PREFIX}-auth-service_mongo
|
|
- DB_NAME=${DB_NAME}
|
|
- DB_PASSWORD=${DB_PASSWORD}
|
|
- DB_USERNAME=${DB_USERNAME}
|
|
- DEFAULT_TOKEN_DAYS=${DEFAULT_TOKEN_DAYS}
|
|
- JWT_AUDIENCE=${JWT_AUDIENCE}
|
|
- JWT_ISSUER=${JWT_ISSUER}
|
|
- JWT_SECRET=${JWT_SECRET}
|
|
- LOGIN_ROUTE=${LOGIN_ROUTE}
|
|
- LOGIN_VALID_TIME=${LOGIN_VALID_TIME}
|
|
- PORT=${PORT}
|
|
- RESET_ROUTE=${RESET_ROUTE}
|
|
- RESET_VALID_MINUTES=${RESET_VALID_MINUTES}
|
|
- ROUTE_PREFIX=${ROUTE_PREFIX}
|
|
- SESSION_KEY=${SESSION_KEY}
|
|
labels:
|
|
- 'traefik.enable=true'
|
|
- 'traefik.docker.network=docknet'
|
|
- 'traefik.http.routers.auth.rule=Host(`${HOST}`) && PathPrefix(`${ROUTE_PREFIX}`)'
|
|
- 'traefik.http.routers.auth.entrypoints=websecure'
|
|
- 'traefik.http.routers.auth.tls=true'
|
|
- 'traefik.http.routers.auth.tls.certresolver=letsencrypt'
|
|
- 'traefik.http.routers.auth.service=auth-service'
|
|
- 'traefik.http.services.auth-service.loadbalancer.server.port=${PORT}'
|
|
networks:
|
|
- auth-backend
|
|
- docknet
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- auth-service_mongo
|
|
image: git.mifi.dev/mifi/auth-service:latest
|
|
|
|
networks:
|
|
auth-backend:
|
|
driver: bridge
|
|
external: false
|
|
docknet:
|
|
name: docknet
|
|
external: true
|
|
|
|
volumes:
|
|
auth-db:
|
|
external: true
|