ldez
9
version: "3.7"
services:
#SERVICE 1 -- Mainapp (on port 2000)
dt:
container_name: mainapp
restart: always
build: '.'
ports:
- "2000:2000"
logging:
driver: journald
options:
tag: "mainapp"
labels:
- "traefik.enable=true"
- "traefik.http.routers.dt.rule=Host(`${DT_VHOST}`,`${DT_WWW_VHOST}`)"
- "traefik.http.routers.dt.entrypoints=websecure"
- "traefik.http.routers.dt.tls.certresolver=le"
- "traefik.http.services.dt.loadbalancer.server.port=2000"
#SERVICE 7 -- TRAEFIK
traefik:
image: "traefik:v2.1.4"
restart: always
container_name: "traefik"
command:
- "--log.level=INFO"
- "--accesslog=true"
- "--api=true"
- "--entrypoints.web.address=:80"
- "--entrypoints.websecure.address=:443"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--certificatesresolvers.le.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory"
- "--certificatesresolvers.le.acme.email=emailrep@gmail.com"
- "--certificatesresolvers.le.acme.storage=/acme.json"
- "--certificatesresolvers.le.acme.tlschallenge=true"
ports:
- "80:80"
- "443:443"
logging:
driver: journald
options:
tag: "traefik"
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
- "./acme.json:/acme.json"
labels:
- "traefik.enable=true"
# Dashboard
- "traefik.http.routers.traefik.rule=Host(`${DASHBOARD_VHOST}`)"
- "traefik.http.routers.traefik.entrypoints=websecure"
- "traefik.http.routers.traefik.service=api@internal"
- "traefik.http.routers.traefik.tls.certresolver=le"
- "traefik.http.routers.traefik.middlewares=api_auth"
- "traefik.http.middlewares.api_auth.basicauth.users=user:$$apr1$$q8eZFHjF$$Fvmkk//V6Btlaf2i/ju5n/" # user / password
networks:
default:
external:
name: traefik