]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - support/doc/docker.md
fix docker-compose extension typo
[github/Chocobozzz/PeerTube.git] / support / doc / docker.md
1 # Docker guide
2
3 You can quickly get a server running using Docker. You need to have
4 [docker](https://www.docker.com/community-edition) and
5 [docker-compose](https://docs.docker.com/compose/install/) installed.
6
7 ## Production
8
9 ### Install
10
11 PeerTube needs a PostgreSQL and a Redis instance to work correctly. If you want
12 to quickly set up a full environment, either for trying the service or in
13 production, you can use a `docker-compose` setup.
14
15 ```shell
16 $ cd /your/peertube/directory
17 $ mkdir ./docker-volume && mkdir ./docker-volume/traefik
18 $ curl "https://raw.githubusercontent.com/chocobozzz/PeerTube/master/support/docker/production/config/traefik.toml" > ./docker-volume/traefik/traefik.toml
19 $ touch ./docker-volume/traefik/acme.json && chmod 600 ./docker-volume/traefik/acme.json
20 $ curl -s "https://raw.githubusercontent.com/chocobozzz/PeerTube/master/support/docker/production/docker-compose.yml" -o docker-compose.yml "https://raw.githubusercontent.com/Chocobozzz/PeerTube/master/support/docker/production/.env" -o .env
21 ```
22
23 Update the reverse proxy configuration:
24
25 ```shell
26 $ vim ./docker-volume/traefik/traefik.toml
27 ```
28
29 Tweak the `docker-compose.yml` file there according to your needs:
30
31 ```shell
32 $ vim ./docker-compose.yml
33 ```
34
35 Then tweak the `.env` file to change the enviromnent variables:
36
37 ```shell
38 $ vim ./.env
39 ```
40
41 Other environment variables are used in
42 `support/docker/production/config/custom-environment-variables.yaml` and can be
43 intuited from usage.
44
45 You can use the regular `up` command to set it up:
46
47 ```shell
48 $ docker-compose up
49 ```
50
51 **Important**: note that you'll get the initial `root` user password from the
52 program output, so check out your logs to find them.
53
54 ### Upgrade
55
56 Pull the latest images and rerun PeerTube:
57
58 ```shell
59 $ cd /your/peertube/directory
60 $ docker-compose down
61 $ docker-compose pull
62 $ docker-compose up -d
63 ```
64
65
66 ## Build your own Docker image
67
68 ```shell
69 $ git clone https://github.com/chocobozzz/PeerTube /tmp/peertube
70 $ cd /tmp/peertube
71 $ docker build . -f ./support/docker/production/Dockerfile.stretch
72 ```
73
74 ## Development
75
76 We don't have a Docker image for development. See [the CONTRIBUTING guide](https://github.com/Chocobozzz/PeerTube/blob/develop/.github/CONTRIBUTING.md#develop)
77 for more information on how you can hack PeerTube!