|
@@ -0,0 +1,54 @@
|
|
|
|
+version: "3"
|
|
|
|
+
|
|
|
|
+networks:
|
|
|
|
+ traefik:
|
|
|
|
+ external: true
|
|
|
|
+
|
|
|
|
+services:
|
|
|
|
+ app:
|
|
|
|
+ image: chocobozzz/peertube
|
|
|
|
+ restart: always
|
|
|
|
+ environment:
|
|
|
|
+ - PEERTUBE_WEBSERVER_HOSTNAME=peertube.wtf
|
|
|
|
+ - PEERTUBE_WEBSERVER_PORT=80
|
|
|
|
+ - PEERTUBE_WEBSERVER_HTTPS=false
|
|
|
|
+ - PEERTUBE_ADMIN_EMAIL=peertube@${CHATONS_DOMAIN:-local}
|
|
|
|
+ - PEERTUBE_DB_HOSTNAME=postgres
|
|
|
|
+ - PEERTUBE_DB_USERNAME=peertube
|
|
|
|
+ - PEERTUBE_SIGNUP_ENABLED=true
|
|
|
|
+ - PEERTUBE_TRANSCODING_ENABLED=true
|
|
|
|
+ - 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.${CHATONS_DOMAIN:-local}
|
|
|
|
+ - PEERTUBE_SMTP_TLS=true
|
|
|
|
+ labels:
|
|
|
|
+ traefik.enable: "true"
|
|
|
|
+ traefik.backend: "peertube"
|
|
|
|
+ traefik.frontend.rule: "Host: peertube.${CHATONS_DOMAIN:-local}, www.peertube.${CHATONS_DOMAIN:-local}"
|
|
|
|
+ traefik.docker.network: "traefik"
|
|
|
|
+ networks:
|
|
|
|
+ - traefik
|
|
|
|
+ - default
|
|
|
|
+ volumes:
|
|
|
|
+ - ${CHATONS_ROOT_DIR:-/srv/chatons}/peertube/data:/data
|
|
|
|
+ - ${CHATONS_ROOT_DIR:-/srv/chatons}/peertube/config:/config
|
|
|
|
+
|
|
|
|
+ postgres:
|
|
|
|
+ image: postgres:10-alpine
|
|
|
|
+ restart: always
|
|
|
|
+ environment:
|
|
|
|
+ - POSTGRES_USER=peertube
|
|
|
|
+ - POSTGRES_DB=peertube
|
|
|
|
+ env_file:
|
|
|
|
+ - .env
|
|
|
|
+ volumes:
|
|
|
|
+ - ${CHATONS_ROOT_DIR:-/srv/chatons}/peertube/postgres:/var/lib/postgresql/data
|
|
|
|
+
|
|
|
|
+ redis:
|
|
|
|
+ image: redis:4-alpine
|
|
|
|
+ restart: always
|
|
|
|
+ volumes:
|
|
|
|
+ - ${CHATONS_ROOT_DIR:-/srv/chatons}/peertube/redis:/data
|