X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=support%2Fdocker%2Fproduction%2Fdocker-compose.yml;h=9f6c47eca388178d53868b94b8c994287b6c6c7c;hb=72698686828b7b80a336d83fdbb1707e3b7a61fe;hp=8144502e72ee2b3b8140f66b3574897f56647030;hpb=18eb286e0bc7ebd793d7eeb475d815b3a588404f;p=github%2FChocobozzz%2FPeerTube.git diff --git a/support/docker/production/docker-compose.yml b/support/docker/production/docker-compose.yml index 8144502e7..9f6c47eca 100644 --- a/support/docker/production/docker-compose.yml +++ b/support/docker/production/docker-compose.yml @@ -3,17 +3,21 @@ version: "3.3" services: reverse-proxy: - image: traefik - command: --api --docker # Enables the web UI and tells Træfik to listen to docker + image: traefik:v1.7 + network_mode: "host" + command: --docker # Tells Træfik to listen to docker ports: - "80:80" # The HTTP port - "443:443" # The HTTPS port - - "8080:8080" # The Web UI (enabled by --api) volumes: - /var/run/docker.sock:/var/run/docker.sock # So that Traefik can listen to the Docker events - ./docker-volume/traefik/acme.json:/etc/acme.json - ./docker-volume/traefik/traefik.toml:/traefik.toml restart: "always" + # If you want to use the Traefik dashboard, you should expose it on a + # subdomain with HTTPS and authentification: + # https://medium.com/@xavier.priour/secure-traefik-dashboard-with-https-and-password-in-docker-5b657e2aa15f + # https://github.com/containous/traefik/issues/880#issuecomment-310301168 peertube: # If you don't want to use the official image and build one from sources @@ -21,24 +25,8 @@ services: # context: . # dockerfile: ./support/docker/production/Dockerfile.stretch image: chocobozzz/peertube:production-stretch - environment: - PEERTUBE_WEBSERVER_HOSTNAME: my.domain.tld - PEERTUBE_WEBSERVER_PORT: 443 - PEERTUBE_WEBSERVER_HTTPS: "true" - PEERTUBE_DB_HOSTNAME: postgres - PEERTUBE_DB_USERNAME: postgres_user - PEERTUBE_DB_PASSWORD: postgres_password - PEERTUBE_REDIS_HOSTNAME: redis - PEERTUBE_SMTP_USERNAME: null - PEERTUBE_SMTP_PASSWORD: null - PEERTUBE_SMTP_HOSTNAME: null - PEERTUBE_SMTP_PORT: 25 - PEERTUBE_SMTP_FROM: noreply@peertube.domain.tld - PEERTUBE_SMTP_TLS: "true" - # /!\ Prefer to use the PeerTube admin interface to set the following configurations /!\ - # PEERTUBE_ADMIN_EMAIL: admin@domain.tld - # PEERTUBE_SIGNUP_ENABLED: "true" - # PEERTUBE_TRANSCODING_ENABLED: "true" + env_file: + - .env # Traefik labels are suggested as an example for people using Traefik, # remove them if you are using another reverse proxy. labels: @@ -54,14 +42,13 @@ services: depends_on: - postgres - redis + - postfix restart: "always" postgres: image: postgres:10-alpine - environment: - POSTGRES_USER: postgres_user - POSTGRES_PASSWORD: postgres_password - POSTGRES_DB: peertube + env_file: + - .env volumes: - ./docker-volume/db:/var/lib/postgresql/data restart: "always" @@ -74,4 +61,19 @@ services: - ./docker-volume/redis:/data restart: "always" labels: - traefik.enable: "false" \ No newline at end of file + traefik.enable: "false" + + postfix: + image: mwader/postfix-relay + env_file: + - .env + labels: + traefik.enable: "false" + restart: "always" + +networks: + default: + ipam: + driver: default + config: + - subnet: 172.18.0.0/16