Files
docker-compose-cookbooks/peertube_dev/compose.yaml
T
codeandClaude Fable 5 8ab413804a normalize all stacks to conventions
- VOL_PATH always defaults to /data; vscode/opencode VOL_PROJECTS nests it
- TZ defaults to America/Vancouver (was UTC in etherpad, ntfy, redis)
- compose section order fixed (volumes before environment, command after networks)
- all default secrets are the literal ChangeThisPassword (grep-friendly,
  users must change them); removed a real key from ollama sample.env
- sample.env synced with compose: missing vars added with defaults, dead vars removed
- invoiceninja_dev/openarchiver_dev: app services had no environment block,
  wired all sample.env vars through so the stacks actually work
- opencode: sample.env OLLAMA_HOST renamed to OLLAMA_HOST_URL to match compose
- TZ values unquoted consistently

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 06:24:54 +00:00

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:-ChangeThisPassword}
- 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: