Emby 与 MetaTube 媒体 Stack Docker Compose 部署 SOP
本卡片记录包含 Emby Amilys 特制版、MetaTube 元数据刮削服务端、Postgres 数据库及 QMediaSync 文件的媒体栈 Docker Compose 配置规程。
一、 部署架构与端口设计
- 网络隔离:全栈挂载至内部
media-stack-net桥接网络。 - 安全绑定:对外暴露端口严格绑定在 Tailscale 专属内网 IP(
100.90.33.29),杜绝公网直接暴露。 - 数据目录:
- Emby 配置与媒体流:
/root/media-stack/config/emby,/root/media-stack/strm - Postgres 数据库:
/root/media-stack/config/metatube-db - QMediaSync 配置:
/root/media-stack/config/qmediasync
- Emby 配置与媒体流:
二、 docker-compose.yml 配置清单
volumes:
metatube-run:
networks:
media-stack-net:
name: media-stack-net
driver: bridge
services:
# === 1. Emby Server (Amilys 特制 x86 版) ===
emby:
image: amilys/embyserver:latest
container_name: emby
restart: always
environment:
- TZ=Asia/Shanghai
- UID=0
- GID=0
- GIDLIST=0
# 显卡硬件加速(选填)
# devices:
# - /dev/dri:/dev/dri
volumes:
- /root/media-stack/config/emby:/config:rw
- /root/media-stack/strm:/media:rw
ports:
- "100.90.33.29:8096:8096"
networks:
- media-stack-net
healthcheck:
test: ["CMD-SHELL", "nc -z localhost 8096 || exit 1"]
interval: 30s
start_period: 60s
# === 2. MetaTube Server ===
metatube:
image: ghcr.io/metatube-community/metatube-server:latest
container_name: metatube
restart: unless-stopped
depends_on:
- postgres
volumes:
- metatube-run:/var/run
command: -dsn "postgres://metatube:[REDACTED]@/metatube?host=/var/run/postgresql" -port 8080 -db-auto-migrate -db-prepared-stmt
expose:
- "8080"
networks:
- media-stack-net
# === 3. Postgres 数据库 ===
postgres:
image: postgres:15-alpine
container_name: metatube-postgres
restart: unless-stopped
environment:
- POSTGRES_USER=metatube
- POSTGRES_PASSWORD=[REDACTED]
- POSTGRES_DB=metatube
volumes:
- /root/media-stack/config/metatube-db:/var/lib/postgresql/data
- metatube-run:/var/run
command: "-c TimeZone=Asia/Shanghai -c log_timezone=Asia/Shanghai -c listen_addresses='' -c unix_socket_permissions=0777"
networks:
- media-stack-net
# === 4. QMediaSync ===
qmediasync:
image: qicfan/qmediasync:latest
container_name: qmediasync
restart: always
depends_on:
- emby
ports:
- "100.90.33.29:12333:12333"
- "100.90.33.29:8095:8095"
volumes:
- /root/media-stack/config/qmediasync:/app/config:rw
- /root/media-stack/strm:/media:rw
networks:
- media-stack-net三、 运维与管控指令
# 启动媒体全栈
cd /root/media-stack && docker compose up -d
# 检查 Emby 及同步服务日志
docker logs -f emby
docker logs -f qmediasync相关链接
- DockerCompose工作流与更新 容器平滑升级标准规程
- Docker容器与镜像管理 镜像与容器生命周期