version: '3.8' services: auth-service_mongo: container_name: ${CONTAINER_PREFIX}-${SERVICE_NAME}_${DB_TYPE} environment: - ALLOW_EMPTY_PASSWORD=yes - MONGO_INITDB_ROOT_USERNAME=${DB_USER} - MONGO_INITDB_ROOT_PASSWORD=${DB_PASS} - MONGO_INITDB_DATABASE=${DB_NAME} networks: - docknet volumes: - '/volume1/docker/labs/grow-auth/mongo:/data/db' restart: unless-stopped image: mongo auth-service: build: . container_name: ${CONTAINER_PREFIX}-${SERVICE_NAME} environment: - PORT=${PORT} - ROUTE_PREFIX=${ROUTE_PREFIX} - LOGIN_ROUTE=${LOGIN_ROUTE} - RESET_ROUTE=${RESET_ROUTE} - DB_HOST=${CONTAINER_PREFIX}-${SERVICE_NAME}_${DB_TYPE} - DB_USER=${DB_USER} - DB_PASS=${DB_PASS} - DB_NAME=${DB_NAME} - SESSION_KEY=${SESSION_KEY} - JWT_AUDIENCE=${JWT_AUDIENCE} - JWT_ISSUER=${JWT_ISSUER} - JWT_SECRET=${JWT_SECRET} - LOGIN_VALID_TIME=${LOGIN_VALID_TIME} - RESET_VALID_MINUTES=${RESET_VALID_MINUTES} - DEFAULT_TOKEN_DAYS=${DEFAULT_TOKEN_DAYS} labels: - 'traefik.enable=true' - 'traefik.http.routers.grow.rule=Host(`${HOST}`)' - 'traefik.http.routers.grow.rule=Path(`${ROUTE_PREFIX}`)' - 'traefik.http.routers.grow.entrypoints=websecure' - 'traefik.http.routers.grow.tls=true' - 'traefik.http.routers.grow.tls.certresolver=letsencrypt' - 'traefik.http.routers.grow.service=gitea' - 'traefik.http.services.gitea.loadbalancer.server.port=${PORT}' networks: - docknet restart: unless-stopped image: node depends_on: - auth-service_mongo networks: docknet: name: docknet