version: '3'
networks:
traefik:
driver: bridge # 使用桥接模式的网络驱动
external: true # 表明这个网络是外部创建的,不由这个 Docker Compose 文件管理
services:
emby:
image: lovechen/embyserver:latest # 使用最新版本的 lovechen/embyserver 镜像
container_name: emby # 容器名称设置为 emby
restart: always # 容器总是重新启动
networks:
- traefik # 将此服务连接到 traefik 网络
ports:
- '8096:8096' # 将容器的 8096 端口映射到主机的 8096 端口
- '8920:8920' # 将容器的 8920 端口映射到主机的 8920 端口
- '1900:1900/udp' # 将容器的 1900 UDP 端口映射到主机的 1900 UDP 端口
- '7359:7359/udp' # 将容器的 7359 UDP 端口映射到主机的 7359 UDP 端口
volumes:
- ./config:/config # 将主机上的 ./config 目录挂载到容器的 /config
- /pt/downloads/link:/data # 将主机上的 /pt/downloads/link 目录挂载到容器的 /data
- /etc/timezone:/etc/timezone # 同步主机和容器的时区设置
- /etc/localtime:/etc/localtime # 同步主机和容器的本地时间
environment:
- UID=0 # 设置容器用户 ID 为 0 (通常是 root)
- GID=0 # 设置容器组 ID 为 0 (通常是 root)
- GIDLIST=0 # 设置容器组 ID 列表为 0
- NVIDIA_VISIBLE_DEVICES=all # 允许容器访问所有 NVIDIA 设备
devices:
- /dev/dri:/dev/dri # 将主机的 /dev/dri 设备挂载到容器
deploy:
resources:
reservations:
devices:
- driver: nvidia # 指定使用 NVIDIA 驱动
count: all # 使用所有可用的 GPU
capabilities: [gpu] # 指定 GPU 能力
labels:
- "diun.enable=true" # 特定的标签,可能用于监控或其他目的
- "traefik.enable=false" # 禁用 Traefik 自动配置此服务
- "traefik.docker.network=traefik"
- "traefik.http.routers.emby.tls=true"
- "traefik.http.routers.emby.entryPoints=https"
- "traefik.http.services.emby.loadbalancer.server.port=8096"
nginx:
image: levonet/nginx:latest # 使用最新版本的 levonet/nginx 镜像
container_name: emby-nginx # 容器名称设置为 emby-nginx
networks:
- traefik # 将此服务连接到 traefik 网络
restart: always # 容器总是重新启动
volumes:
- ./nginx_config/nginx.conf:/etc/nginx/nginx.conf # 挂载 nginx 配置文件
- ./nginx_config/http.d:/etc/nginx/http.d # 挂载 nginx http 配置目录
- ./nginx_config/conf.d:/etc/nginx/conf.d # 挂载 nginx 附加配置目录
ports:
- 8083:80 # 将容器的 80 端口映射到主机的 8083 端口
environment:
- TZ=Asia/Shanghai # 设置容器的时区为亚洲/上海
labels:
- "traefik.enable=true" # 启用 Traefik 自动配置此服务
- "traefik.docker.network=traefik"
- "traefik.http.routers.emby-nginx.tls=true"
- "traefik.http.routers.emby-nginx.entryPoints=https"
- "traefik.http.routers.emby-nginx.rule=Host(`yourhost.com`) && PathPrefix(`/`)"
docker run \
--network=bridge \
-p '8096:8096' \
-p '8920:8920' \
-p '1900:1900/udp' \
-p '7359:7359/udp' \
-v /data/emby:/config \
-v /data/downloads/:/data \
-e TZ="Asia/Shanghai" \
--device /dev/dri:/dev/dri \
-e UID=0 \
-e GID=0 \
-e GIDLIST=0 \
--restart always \
-e HTTP_PROXY="http://你的代理IP:你的代理端口/" \
-e HTTPS_PROXY="http://你的代理IP:你的代理端口/" \
--name emby \
-d lovechen/embyserver:版本号
docker run \
#设置网络模式
--network=bridge \
#开放端口
#http
-p '8096:8096' \
#https
-p '8920:8920' \
#dlna
-p '1900:1900/udp' \
#local network discovery
-p '7359:7359/udp' \
#映射配置目录
-v /data/emby:/config \
#映射影视资源目录
-v /data/downloads/:/data \
#设置时区
-e TZ="Asia/Shanghai" \
#映射硬解驱动
--device /dev/dri:/dev/dri \
#设置权限
-e UID=0 \
-e GID=0 \
-e GIDLIST=0 \
--restart always \
#设置代理(用于TMDB等搜集信息)
-e HTTP_PROXY="http://你的代理IP:你的代理端口/" \
-e HTTPS_PROXY="http://你的代理IP:你的代理端口/" \
#docker名字
--name emby \
#docker源版本
-d lovechen/embyserver:版本号
补充信息: 关于有用户安装了字幕插件每次扫描都会自动重新下载的问题 在媒体库中取消对字幕插件的勾选
Content type
Image
Digest
sha256:955dd787d…
Size
220.5 MB
Last updated
almost 2 years ago
docker pull jellyfina/embyserver