app-store/apps/owncast/docker-compose.yml

44 lines
2.0 KiB
YAML
Executable File

version: '3.9'
services:
owncast:
container_name: owncast
image: owncast/owncast:0.1.3
volumes:
- ${APP_DATA_DIR}/data:/app/data
ports:
- ${APP_PORT}:8080 # App Port
- 1935:1935 # RTMP Port
restart: unless-stopped
networks:
- tipi_main_network
labels:
# Main
traefik.enable: true
traefik.http.middlewares.owncast-web-redirect.redirectscheme.scheme: https
traefik.http.services.owncast.loadbalancer.server.port: 8080
traefik.tcp.services.owncast-rtmp.loadbalancer.server.port: 1935
# Web
traefik.http.routers.owncast-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.owncast-insecure.entrypoints: web
traefik.http.routers.owncast-insecure.service: owncast
traefik.http.routers.owncast-insecure.middlewares: owncast-web-redirect
traefik.tcp.routers.owncast-rtmp-insecure.rule: HostSNI(`${APP_DOMAIN}`)
# Websecure
traefik.http.routers.owncast.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.owncast.entrypoints: websecure
traefik.http.routers.owncast.service: owncast
traefik.http.routers.owncast.tls.certresolver: myresolver
traefik.tcp.routers.owncast-rtmp.rule: HostSNI(`${APP_DOMAIN}`)
# Local domain
traefik.http.routers.owncast-local-insecure.rule: Host(`owncast.${LOCAL_DOMAIN}`)
traefik.http.routers.owncast-local-insecure.entrypoints: web
traefik.http.routers.owncast-local-insecure.service: owncast
traefik.http.routers.owncast-local-insecure.middlewares: owncast-web-redirect
traefik.tcp.routers.owncast-rtmp-local-insecure.rule: HostSNI(`owncast.${LOCAL_DOMAIN}`)
# Local domain secure
traefik.http.routers.owncast-local.rule: Host(`owncast.${LOCAL_DOMAIN}`)
traefik.http.routers.owncast-local.entrypoints: websecure
traefik.http.routers.owncast-local.service: owncast
traefik.http.routers.owncast-local.tls: true
traefik.tcp.routers.owncast-rtmp-local.rule: HostSNI(`owncast.${LOCAL_DOMAIN}`)