-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.prod.yml
65 lines (59 loc) · 2.23 KB
/
docker-compose.prod.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
services:
nuxt:
image: 662032419283.dkr.ecr.eu-north-1.amazonaws.com/homemap/front:latest
labels:
- "traefik.enable=true"
- "traefik.http.routers.nuxt.entrypoints=websecure"
- "traefik.http.routers.nuxt.rule=Host(`${DOMAIN}`)"
- "traefik.http.services.nuxt.loadbalancer.server.port=3000"
environment:
- NUXT_PUBLIC_API_BASE_URL=https://api.${DOMAIN}/api
networks:
- traefik_net
dotnet:
image: 662032419283.dkr.ecr.eu-north-1.amazonaws.com/homemap/back:latest
labels:
- "traefik.enable=true"
- "traefik.http.routers.dotnet.entrypoints=websecure"
- "traefik.http.routers.dotnet.rule=Host(`api.${DOMAIN}`)"
- "traefik.http.services.dotnet.loadbalancer.server.port=8080"
- "traefik.http.middlewares.cors.headers.accesscontrolalloworiginlistregex=https?://{DOMAIN}"
- "traefik.http.middlewares.cors.headers.addvaryheader=true"
- "traefik.http.routers.dotnet.middlewares=cors"
networks:
- traefik_net
nanomq:
labels:
- "traefik.enable=true"
- "traefik.tcp.routers.nanomq.entrypoints=mqtt"
- "traefik.tcp.routers.nanomq.rule=HostSNI(`*`)"
- "traefik.tcp.services.nanomq.loadbalancer.server.port=1883"
# - "traefik.tcp.routers.nanomq-secure.entrypoints=mqttsecure"
# - "traefik.tcp.routers.nanomq-secure.rule=HostSNI(`broker.${DOMAIN}/`)"
# - "traefik.tcp.routers.nanomq-secure.tls.certresolver=letsencrypt"
# - "traefik.tcp.routers.nanomq-secure.service=nanomq-secure"
# - "traefik.tcp.services.nanomq-secure.loadbalancer.server.port=1883"
networks:
- traefik_net
traefik:
container_name: traefik-reverse-proxy
restart: unless-stopped
image: traefik:v3.2
ports:
- 80:80
- 443:443
- 1883:1883
- 8080:8080
# - 8883:8883
environment:
- TRAEFIK_PROVIDERS_DOCKER_DEFAULTRULE=Host(`{{ normalize trimPrefix `/` .Name }}.${DOMAIN}`)
- TRAEFIK_CERTIFICATESRESOLVERS_LETSENCRYPT_ACME_EMAIL=${ACME_EMAIL}
volumes:
- ./traefik.yml:/etc/traefik/traefik.yml
- ./letsencrypt:/etc/traefik/letsencrypt
- /var/run/docker.sock:/var/run/docker.sock
networks:
- traefik_net
networks:
traefik_net:
external: true