-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
111 lines (102 loc) · 3.41 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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
version: '3.9'
# https://containo.us/blog/traefik-2-0-docker-101-fc2893944b9d/
services:
traefik:
image: "traefik:v2.4"
container_name: "traefik"
command:
#- "--log.level=DEBUG"
- "--api"
- "--api.dashboard=true"
#- "--api.insecure=true"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--providers.file.filename=/traefik/traefik.yaml"
#- "--providers.file.watch=true"
- "--entrypoints.web.address=:80"
- "--entrypoints.websecure.address=:443"
#- "--certificatesresolvers.le.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory"
- --certificatesresolvers.le.acme.storage=/acme/acme.json
- --certificatesresolvers.le.acme.httpchallenge=true
- --certificatesresolvers.le.acme.httpchallenge.entrypoint=web
#- --certificatesresolvers.le.acme.tlschallenge=true
ports:
- "80:80"
- "443:443"
#- "8080:8080"
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
- "acme:/acme"
- "./traefik:/traefik"
labels:
- "traefik.enable=true"
- "traefik.http.routers.api.rule=Host(`traefik.c3lingowiki.zs64.net`)"
- "traefik.http.routers.api.service=api@internal"
- "traefik.http.routers.api.middlewares=admin"
- "traefik.http.routers.api.tls.certresolver=le"
- "traefik.http.routers.api.entrypoints=web,websecure"
- "traefik.http.middlewares.admin.basicauth.usersfile=/traefik/admin-users.htpasswd"
- "traefik.http.routers.redirs.rule=hostregexp(`{host:.+}`)"
- "traefik.http.routers.redirs.entrypoints=web"
- "traefik.http.routers.redirs.middlewares=redirect-to-https"
- "traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https"
certsdumper:
image: ldez/traefik-certs-dumper
deploy:
restart_policy:
condition: on-failure
delay: 1d
max_attempts: 1000
command:
- "file"
- "--version"
- "v2"
- "--source"
- "/acme/acme.json"
- "--dest"
- "/certs"
volumes:
- "acme:/acme"
- "./certs:/certs"
dokuwiki:
build: dokuwiki
restart: always
volumes:
- ./html:/var/www/html
- ./msmtprc:/etc/msmtprc
labels:
- "traefik.enable=true"
- "traefik.http.routers.dokuwiki.rule=Host(`wiki.c3lingo.org`)"
- "traefik.http.routers.dokuwiki.entrypoints=websecure"
- "traefik.http.routers.dokuwiki.tls.certresolver=le"
murmur:
image: goofball222/murmur
restart: always
ports:
- 64738:64738
- 64738:64738/udp
volumes:
- /etc/localtime:/etc/localtime:ro
- ./murmur/cert:/opt/murmur/cert
- ./murmur/config:/opt/murmur/config
- ./murmur/data:/opt/murmur/data
- ./murmur/log:/opt/murmur/log
- "./certs:/certs"
environment:
- TZ=UTC
c3lingotest:
image: c3lingo/c3lingo-mumble:latest
command: "-m c3lingo_mumble.play_wav -c /c3lingo-mumbleweb/test-channel.yaml"
volumes:
- "./c3lingo-mumbleweb:/c3lingo-mumbleweb"
mumbleweb:
image: c3lingo/mumble-web
restart: always
labels:
- "traefik.enable=true"
- "traefik.http.routers.mumble.rule=Host(`mumble.c3lingo.org`)"
- "traefik.http.routers.mumble.entrypoints=websecure"
- "traefik.http.routers.mumble.tls.certresolver=le"
volumes:
acme: {}