44 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			YAML
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			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}`)
 |