]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - support/docker/production/docker-compose.yml
Trigger a Gitpod dev image rebuild (in order to get upstream's Node.js 12 upgrade...
[github/Chocobozzz/PeerTube.git] / support / docker / production / docker-compose.yml
CommitLineData
e8395f02 1version: "3.3"
2
3services:
e8395f02 4
1a9b141d
RK
5 # The webserver is not required, but recommended since a lot of optimizations went to its
6 # nginx configuration file. It runs the default nginx configuration without HTTPS nor SSL,
b8f3e6b0 7 # so use it in production in tandem with an SSL-terminating reverse-proxy.
1a9b141d 8 webserver:
a30995fc 9 image: chocobozzz/peertube:webserver
1a9b141d
RK
10 build:
11 context: .
12 dockerfile: Dockerfile.nginx
08c11bec
C
13 env_file:
14 - .env
1a9b141d
RK
15 # If you provide your own reverse-proxy, otherwise not suitable for production:
16 #ports:
b8f3e6b0 17 # - "9000:80" # serving HTTP
1a9b141d
RK
18 volumes:
19 - type: bind
a30995fc
RK
20 # Switch sources if you downloaded the whole repository
21 #source: ../../nginx/peertube
22 source: ./docker-volume/nginx/peertube
1a9b141d
RK
23 target: /etc/nginx/conf.d/peertube.template
24 - assets:/var/www/peertube/peertube-latest/client/dist:ro
25 - ./docker-volume/data:/var/www/peertube/storage
26 depends_on:
27 - peertube
28 restart: "always"
1a9b141d
RK
29
30 peertube:
31 # If you don't want to use the official image and build one from sources:
32 #build:
33 # context: .
34 # dockerfile: ./support/docker/production/Dockerfile.buster
35 image: chocobozzz/peertube:production-buster
36 env_file:
37 - .env
38 # If you provide your own webserver and reverse-proxy, otherwise not suitable for production:
39 #ports:
b8f3e6b0 40 # - "80:9000" # serving HTTP
e8395f02 41 volumes:
1a9b141d 42 - assets:/app/client/dist
fd5e57bb
C
43 - ./docker-volume/data:/data
44 - ./docker-volume/config:/config
e8395f02 45 depends_on:
ef48a0d5
BB
46 - postgres
47 - redis
fef13f14 48 - postfix
ef48a0d5 49 restart: "always"
e8395f02 50
ef48a0d5 51 postgres:
a30995fc 52 image: postgres:13-alpine
e2882b2c
L
53 env_file:
54 - .env
e8395f02 55 volumes:
fd5e57bb 56 - ./docker-volume/db:/var/lib/postgresql/data
ef48a0d5
BB
57 restart: "always"
58
59 redis:
a30995fc 60 image: redis:6-alpine
ef48a0d5 61 volumes:
fd5e57bb 62 - ./docker-volume/redis:/data
ef48a0d5 63 restart: "always"
fef13f14
FA
64
65 postfix:
66 image: mwader/postfix-relay
e2882b2c
L
67 env_file:
68 - .env
cd7ec86f 69 volumes:
70 - ./docker-volume/opendkim/keys:/etc/opendkim/keys
fef13f14 71 restart: "always"
1bab2bbc
FA
72
73networks:
74 default:
75 ipam:
76 driver: default
77 config:
b8f3e6b0 78 - subnet: 172.18.0.0/16
1a9b141d
RK
79
80volumes:
81 assets: