-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
55 lines (49 loc) · 1.77 KB
/
docker-compose.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
version: "3.9"
services:
pomegranate:
build: ./
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
depends_on:
- reverse-proxy
env_file:
- .env
ports:
- "50051:50051"
reverse-proxy:
# The official v2 Traefik docker image
image: traefik:v2.10
ports:
# The HTTP port
- "80:80"
- "443:443"
volumes:
# So that Traefik can listen to the Docker events
- /var/run/docker.sock:/var/run/docker.sock
# Uncomment to enable storage of Let's encrypt certificates on host
- ./letsencrypt:/letsencrypt
command:
- --providers.docker=true
- --providers.docker.network=pomegranate-proxy-network
# Default entrypoint, redirect to 443 (HTTPS)
- --entryPoints.web.address=:80
- --entryPoints.web.http.redirections.entryPoint.to=websecure
- --entryPoints.web.http.redirections.entryPoint.scheme=https
- --entryPoints.web.http.redirections.entryPoint.permanent=true
# Secured endpoint
- --entryPoints.websecure.address=:443
- --entryPoints.websecure.http.tls.certResolver=letsencrypt
- --entryPoints.websecure.http.tls.domains[0].main=${POMEGRANATE_FQDN}
- --entryPoints.websecure.http.tls.domains[0].sans[0]=*.${POMEGRANATE_FQDN}
- --certificatesResolvers.letsencrypt.acme.storage=/letsencrypt/acme.json
- --certificatesResolvers.letsencrypt.acme.email=${POMEGRANATE_LETSENCRYPT_EMAIL}
- --certificatesResolvers.letsencrypt.acme.dnsChallenge.provider=${POMEGRANATE_LETSENCRYPT_PROVIDER}
- --log.level=DEBUG
env_file:
- .env
networks:
- pomegranate-proxy-network
networks:
# The network to connect client containers to traefik
pomegranate-proxy-network:
name: ${POMEGRANATE_DOCKER_NETWORK_NAME}