]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame_incremental - support/doc/docker.md
Improve P2P & Privacy section
[github/Chocobozzz/PeerTube.git] / support / doc / docker.md
... / ...
CommitLineData
1# Docker guide
2
3You 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
11PeerTube needs a PostgreSQL and a Redis instance to work correctly. If you want
12to quickly set up a full environment, either for trying the service or in
13production, 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
23Update the reverse proxy configuration:
24
25```shell
26$ vim ./docker-volume/traefik/traefik.toml
27```
28
29Tweak the `docker-compose.yml` file there according to your needs:
30
31```shell
32$ vim ./docker-compose.yaml
33```
34
35Then tweak the `.env` file to change the enviromnent variables:
36
37```shell
38$ vim ./.env
39```
40
41Other environment variables are used in
42`support/docker/production/config/custom-environment-variables.yaml` and can be
43intuited from usage.
44
45You 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
52program output, so check out your logs to find them.
53
54### Upgrade
55
56Pull 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
76We don't have a Docker image for development. See [the CONTRIBUTING guide](https://github.com/Chocobozzz/PeerTube/blob/develop/.github/CONTRIBUTING.md#develop)
77for more information on how you can hack PeerTube!