Files
docker-compose-cookbooks/peertube_dev/compose.yaml
T

63 lines
1.9 KiB
YAML

services:
postgres:
image: ${PEERTUBE_POSTGRES_IMAGE:-postgres:16-alpine}
restart: ${PEERTUBE_RESTART:-unless-stopped}
volumes:
- ${VOL_PATH:-/data}/peertube/postgres:/var/lib/postgresql/data
environment:
- POSTGRES_USER=peertube
- POSTGRES_PASSWORD=peertube
- POSTGRES_DB=peertube
networks:
- internal
redis:
image: ${PEERTUBE_REDIS_IMAGE:-redis:7-alpine}
restart: ${PEERTUBE_RESTART:-unless-stopped}
volumes:
- ${VOL_PATH:-/data}/peertube/redis:/data
networks:
- internal
peertube:
image: ${PEERTUBE_IMAGE:-chocobozzz/peertube:production-bookworm}
restart: ${PEERTUBE_RESTART:-unless-stopped}
volumes:
- ${VOL_PATH:-/data}/peertube/data:/data
- ${VOL_PATH:-/data}/peertube/config:/config
environment:
- NODE_ENV=production
- POSTGRES_USER=peertube
- POSTGRES_PASSWORD=peertube
- POSTGRES_DB=peertube
- PEERTUBE_DB_USERNAME=peertube
- PEERTUBE_DB_PASSWORD=peertube
- PEERTUBE_DB_SSL=false
- PEERTUBE_DB_HOSTNAME=postgres
- PEERTUBE_WEBSERVER_HOSTNAME=${PEERTUBE_HOSTNAME:-localhost}
- PEERTUBE_WEBSERVER_PORT=9000
- PEERTUBE_WEBSERVER_HTTPS=false
- PEERTUBE_SIGNUP_ENABLED=false
- PEERTUBE_TRANSCODING_ENABLED=false
- PEERTUBE_CONTACT_FORM_ENABLED=false
- PEERTUBE_ADMIN_EMAIL=${PEERTUBE_ADMIN_EMAIL:-admin@example.com}
- PEERTUBE_ADMIN_USERNAME=admin
- PEERTUBE_ADMIN_PASSWORD=${PEERTUBE_ADMIN_PASSWORD:-changeme123}
- PEERTUBE_SECRET=${PEERTUBE_SECRET:?must_be_set}
- PEERTUBE_FEDERATION_ENABLED=false
- PEERTUBE_TRACKER_ENABLED=false
- PEERTUBE_IMPORT_ENABLED=false
ports:
- "${PEERTUBE_PORT:-9000}:9000"
networks:
- proxy
- internal
depends_on:
- postgres
- redis
networks:
proxy:
external: true
internal: