dockerfiles/peertube/docker-compose.yml

62 lines
1.6 KiB
YAML

version: "3.8"
services:
peertube:
image: chocobozzz/peertube:production-bullseye
ports:
- "1935:1935"
- "9000:9000"
volumes:
- ./data/peertube/assets:/app/client/dist
- ./data/peertube/data:/data
- ./data/peertube/config:/config
environment:
PEERTUBE_DB_USERNAME: peertube
PEERTUBE_DB_PASSWORD: peertube
PEERTUBE_DB_SSL: 'false'
PEERTUBE_DB_HOSTNAME: 'postgres'
PEERTUBE_WEBSERVER_HOSTNAME: 'peertube.easypi.duckdns.org'
# PEERTUBE_WEBSERVER_PORT: '80'
# PEERTUBE_WEBSERVER_HTTPS: 'false'
PEERTUBE_TRUST_PROXY: '["127.0.0.1", "loopback", "172.18.0.0/16"]'
PEERTUBE_SMTP_USERNAME: username
PEERTUBE_SMTP_PASSWORD: password
PEERTUBE_SMTP_HOSTNAME: smtp.gmail.com
PEERTUBE_SMTP_PORT: 465
PEERTUBE_SMTP_FROM: noreply@gmail.com
PEERTUBE_SMTP_TLS: 'true'
PEERTUBE_SMTP_DISABLE_STARTTLS: 'false'
PEERTUBE_ADMIN_EMAIL: admin@gmail.com
PEERTUBE_SECRET: 'xxxxxx' # openssl rand -hex 32
networks:
default:
ipv4_address: 172.18.0.42
depends_on:
- postgres
- redis
restart: unless-stopped
postgres:
image: postgres:14-alpine
volumes:
- ./data/postgres:/var/lib/postgresql/data
environment:
POSTGRES_USER: peertube
POSTGRES_PASSWORD: peertube
POSTGRES_DB: peertube
restart: unless-stopped
redis:
image: redis:7-alpine
volumes:
- ./data/redis:/data
restart: unless-stopped
networks:
default:
ipam:
driver: default
config:
- subnet: 172.18.0.0/16