Files
360_player/docker-compose.yml
T

53 lines
1.9 KiB
YAML
Raw Normal View History

services:
360-player:
container_name: 360-player
build:
context: .
dockerfile: Dockerfile
image: 360-player:latest
restart: unless-stopped
ports:
# 區網用 IP 直連的 HTTP(憑證是網域名,IP 連一定會跳警告,所以留一條明文)。
# 想只走 HTTPS 的話把這兩行刪掉,改用下面的 expose 就好。
- "${PORT:-8360}:8360"
expose:
- "8360"
volumes:
# 影片資料夾(NAS 上的實際路徑)→ 容器內 /videos,唯讀
- "${VIDEO_DIR:-/volume1/photo/Badminton}:/videos:ro"
# 轉檔輸出 + probe 快取 → 容器內 /cache(需要可寫)
- "${CACHE_DIR:-./cache}:/cache"
environment:
TZ: ${TZ:-Asia/Taipei}
# CPU 轉檔時 libx264 的 presetNAS CPU 弱可改 superfast / ultrafast(檔案會稍大)
X264_PRESET: ${X264_PRESET:-veryfast}
# 本機為 Intel J4025UHD 600),已啟用 VAAPI 硬體轉檔;
# 換到沒有 /dev/dri 的機器時要把下面兩行註解掉,否則容器起不來。
devices:
- /dev/dri:/dev/dri
360-player-web:
container_name: 360-player-web
build:
context: .
dockerfile: docker/nginx/Dockerfile
image: 360-player-web:latest
restart: unless-stopped
depends_on:
- 360-player
ports:
- "${HTTPS_PORT:-8443}:8443"
environment:
TZ: ${TZ:-Asia/Taipei}
NGINX_PORT: 8443
NGINX_SERVER_NAME: ${NGINX_SERVER_NAME:-_}
SSL_CERT_DIR: /etc/nginx/certs
SSL_CERT_FILE_NAME: ${SSL_CERT_FILE_NAME:-cert.pem}
SSL_CHAIN_FILE_NAME: ${SSL_CHAIN_FILE_NAME:-chain.pem}
SSL_KEY_FILE_NAME: ${SSL_KEY_FILE_NAME:-privkey.pem}
UPSTREAM_HOST: 360-player
UPSTREAM_PORT: 8360
volumes:
# 憑證來源與 badminton-scoreboard 共用;DSM 續期後 entrypoint 會自動 reload
- "${SSL_CERT_DIR:-/volume1/docker/certs}:/etc/nginx/certs:ro"