]>
Commit | Line | Data |
---|---|---|
1 | version: "3.3" | |
2 | ||
3 | services: | |
4 | ||
5 | reverse-proxy: | |
6 | image: traefik:v1.7 | |
7 | network_mode: "host" | |
8 | command: | |
9 | - "--docker" # Tells Træfik to listen to docker | |
10 | - "--acme.email=${TRAEFIK_ACME_EMAIL}" # Let's Encrypt ACME email | |
11 | - "--acme.domains=${TRAEFIK_ACME_DOMAINS}" # Let's Encrypt ACME domain list | |
12 | ports: | |
13 | - "80:80" # The HTTP port | |
14 | - "443:443" # The HTTPS port | |
15 | volumes: | |
16 | - /var/run/docker.sock:/var/run/docker.sock # So that Traefik can listen to the Docker events | |
17 | - ./docker-volume/traefik/acme.json:/etc/acme.json | |
18 | - ./docker-volume/traefik/traefik.toml:/traefik.toml | |
19 | restart: "always" | |
20 | # If you want to use the Traefik dashboard, you should expose it on a | |
21 | # subdomain with HTTPS and authentification: | |
22 | # https://medium.com/@xavier.priour/secure-traefik-dashboard-with-https-and-password-in-docker-5b657e2aa15f | |
23 | # https://github.com/containous/traefik/issues/880#issuecomment-310301168 | |
24 | ||
25 | peertube: | |
26 | # If you don't want to use the official image and build one from sources | |
27 | # build: | |
28 | # context: . | |
29 | # dockerfile: ./support/docker/production/Dockerfile.buster | |
30 | image: chocobozzz/peertube:production-buster | |
31 | env_file: | |
32 | - .env | |
33 | # Traefik labels are suggested as an example for people using Traefik, | |
34 | # remove them if you are using another reverse proxy. | |
35 | labels: | |
36 | traefik.enable: "true" | |
37 | traefik.frontend.rule: "Host:${PEERTUBE_WEBSERVER_HOSTNAME}" | |
38 | traefik.port: "9000" | |
39 | # If you don't want to use a reverse proxy (not suitable for production!) | |
40 | # ports: | |
41 | # - "80:9000" | |
42 | volumes: | |
43 | - ./docker-volume/data:/data | |
44 | - ./docker-volume/config:/config | |
45 | depends_on: | |
46 | - postgres | |
47 | - redis | |
48 | - postfix | |
49 | restart: "always" | |
50 | ||
51 | postgres: | |
52 | image: postgres:10-alpine | |
53 | env_file: | |
54 | - .env | |
55 | volumes: | |
56 | - ./docker-volume/db:/var/lib/postgresql/data | |
57 | restart: "always" | |
58 | labels: | |
59 | traefik.enable: "false" | |
60 | ||
61 | redis: | |
62 | image: redis:4-alpine | |
63 | volumes: | |
64 | - ./docker-volume/redis:/data | |
65 | restart: "always" | |
66 | labels: | |
67 | traefik.enable: "false" | |
68 | ||
69 | postfix: | |
70 | image: mwader/postfix-relay | |
71 | env_file: | |
72 | - .env | |
73 | volumes: | |
74 | - ./docker-volume/opendkim/keys:/etc/opendkim/keys | |
75 | labels: | |
76 | traefik.enable: "false" | |
77 | restart: "always" | |
78 | ||
79 | networks: | |
80 | default: | |
81 | ipam: | |
82 | driver: default | |
83 | config: | |
84 | - subnet: 172.18.0.0/16 |