version: "3.8" services: postgres: image: postgres:13-alpine networks: - frontend env_file: - .env volumes: - ./docker-volume/db:/var/lib/postgresql/data restart: "always" redis: networks: - frontend image: redis:6-alpine volumes: - ./docker-volume/redis:/data restart: "always" peertube: image: chocobozzz/peertube:production-buster networks: - frontend env_file: - .env ports: - "1935:1935" - "127.0.0.1:3001:9000" volumes: - ./dist:/app/client/dist - ./docker-volume/data:/data - ./docker-volume/config:/config depends_on: - postgres - redis restart: "always" labels: - "traefik.enable=true" - "traefik.docker.network=frontend" - "traefik.http.routers.peertube-http.rule=Host(`peertube.3peaks.re`)" - "traefik.http.routers.peertube-http.entrypoints=entrypoints-http" - "traefik.http.routers.peertube-http.middlewares=redirect" - "traefik.http.middlewares.redirect.redirectscheme.scheme=https" - "traefik.http.routers.peertube-https.rule=Host(`peertube.3peaks.re`)" - "traefik.http.routers.peertube-https.entrypoints=entrypoints-https" - "traefik.http.routers.peertube-https.tls.certresolver=myresolver" - "traefik.http.services.peertube.loadbalancer.server.port=3001" networks: frontend: external: true # default: # ipam: # driver: default # config: # - subnet: 172.36.0.0/16