-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
93 lines (88 loc) · 2.81 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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
services:
traefik:
image: traefik:v3.1
ports:
- "80:80"
- "443:443"
- "8080:8080"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./traefik_static.yml:/etc/traefik/traefik.yml:ro
- ./traefik_dynamic.yml:/etc/traefik/dynamic.yml:ro
- ./certs/:/etc/certs:ro
- ./plugins-local:/plugins-local:ro
- ./logs:/var/log/traefik
labels:
- "traefik.enable=true"
- "traefik.http.routers.traefik.rule=Host(`traefik.localhost.gg`)"
- "traefik.http.routers.traefik.entrypoints=https"
- "traefik.http.routers.traefik.tls=true"
- "traefik.http.routers.traefik.service=traefik@docker"
- "traefik.http.services.traefik.loadbalancer.server.port=8080"
networks:
- treblle-network
producer:
build:
context: ./producer
args:
- RUST_VERSION=${RUST_VERSION}
environment:
- CONSUMER_URL=http://consumer:3000
- INTERVAL_DURATION=5
labels:
- "traefik.enable=true"
- "traefik.http.routers.producer.rule=Host(`producer.localhost.gg`)"
- "traefik.http.routers.producer.entrypoints=https"
- "traefik.http.routers.producer.tls=true"
- "traefik.http.routers.producer.service=producer@docker"
- "traefik.http.services.producer.loadbalancer.server.port=3000"
networks:
- treblle-network
profiles:
- local_treblle_api
consumer:
build:
context: ./consumer
args:
- RUST_VERSION=${RUST_VERSION}
labels:
- "traefik.enable=true"
- "traefik.http.routers.consumer.rule=Host(`consumer.localhost.gg`)"
- "traefik.http.routers.consumer.entrypoints=https"
- "traefik.http.routers.consumer.tls=true"
- "traefik.http.routers.consumer.service=consumer@docker"
- "traefik.http.routers.consumer.middlewares=treblle-middleware@file"
- "traefik.http.services.consumer.loadbalancer.server.port=3000"
networks:
- treblle-network
treblle-api:
build:
context: ./treblle-api
args:
- RUST_VERSION=${RUST_VERSION}
labels:
- "traefik.enable=true"
- "traefik.http.routers.treblle-api.rule=Host(`treblle-api.localhost.gg`)"
- "traefik.http.routers.treblle-api.entrypoints=https"
- "traefik.http.routers.treblle-api.tls=true"
- "traefik.http.routers.treblle-api.service=treblle-api@docker"
- "traefik.http.services.treblle-api.loadbalancer.server.port=3000"
networks:
- treblle-network
profiles:
- local_treblle_api
mkcert:
environment:
- domain=*.localhost.gg
container_name: mkcert
platform: linux/amd64
volumes:
- ./certs/:/root/.local/share/mkcert
image: vishnunair/docker-mkcert
labels:
- "traefik.enable=false"
networks:
- treblle-network
networks:
treblle-network:
external: true