Docker 部署 Emby:轻松搭建家庭影音媒体服务器

手把手教你用Docker快速部署Emby媒体服务器(含中文设置) 本文详细介绍了如何使用Docker快速部署Emby媒体服务器,包括环境准备、容器部署、中文设置及性能优化等步骤。通过Docker技术,用户可以轻松搭建个人多媒体中心,实现高效管理电影、音乐等媒体文件,并支持多设备流畅播放。 阅读详情

本文基于 amilys/embyserver:4.10.1.0-amd64,实测引擎 Emby Server 4.10.1.0(.NET 8.0.28),测试平台 Ubuntu 24.04 Linux。

硬盘里的电影和剧集按季、按文件夹越堆越乱。客厅电视用文件管理器翻 SMB 共享,点开「未整理」才发现季和集对不上,外挂字幕还躺在另一个目录。手机想接着看昨晚放到一半的那一集,进度停在电脑上的播放器里,两边对不上。4K 原盘直接拖进网页播放器,CPU 风扇先响起来,进度条还在转圈。家里两个人各看各的,账号和观看记录也拆不开。

把这些片子再丢进网盘,家人要另装一个客户端,画质和流量都不在自己手里;小孩活动、家庭录像也不适合再传出去。公共流媒体账号又覆盖不了自己硬盘里的片。直接在系统里装一套媒体服务,转码组件、依赖和升级缠在一起。家里或机房已经有一台跑 Docker 的 Linux,缺的是:服务能拉起来、电影目录挂进去、浏览器打开就能建库,电视和手机再连同一台服务器。

Emby(官网、镜像页)是面向家庭的媒体服务器:电影、剧集、音乐和照片收成媒体库,浏览器、手机和电视客户端串流,并同步播放进度。本文用的 amilys/embyserver 是维护者 amilys 的社区镜像。配置落在容器内 /config,片库由你把宿主机目录挂进去。容器启动时会执行 /config/config/ext.sh,用来开关界面美化(emby-crx)、弹幕(dd-danmaku)和外部播放器(embyExternalUrl)。本文使用 amilys/embyserver:4.10.1.0-amd64 版本实测。

跑通之后,可以在浏览器里创建管理员,把挂进容器的目录收成电影库或剧集库,再用电视、手机上的 Emby 客户端连同一台服务器接着看。


一、环境要求

项目建议
系统Linux;macOS 上把工作目录换成 ~/docker/embyserver
DockerEngine + Compose V2(docker compose version 能输出版本)
架构x86_64 用 4.10.1.0-amd64;aarch64 用 4.10.1.0-arm64
内存扫描片库和软解转码时会再升高
磁盘Docker Hub 对 amd64 标签标注约 365 MB。片库、海报和转码缓存另计
端口宿主机 8096 → 容器 8096(HTTP)。可选宿主机 8920 → 容器 8920(HTTPS,要在 Emby 里配置证书后才走加密)
权限privileged: true。启动脚本要写 /config/config/ext.sh,并修改镜像内的 /system
工作目录/www/wwwroot/embyserver

先看本机架构,再决定标签:

uname -m
docker --version
docker compose version

x86_64 用后文的 4.10.1.0-amd64。aarch64 把命令和 Compose 里的标签改成 4.10.1.0-arm64。

Linux 未装 Docker 可使用轩辕镜像一键安装脚本:

bash <(wget -qO- https://get.xuanyuan.cloud/docker.sh)

备用地址:

bash <(wget -qO- https://get.xuanyuan.me/docker.sh)

更多见轩辕镜像使用手册。


二、拉取镜像

2.1 标签怎么选

维护者 2026-10-03 的说明里,稳定版是 v4.10.1.0,beta 是 v4.10.0.11。Docker Hub 上没有不带架构后缀的 4.10.1.0 标签,稳定版拆成两个架构标签。

标签说明本文是否采用
4.10.1.0-amd64稳定版 v4.10.1.0 的 amd64,2026-10-03 推送x86_64 采用
4.10.1.0-arm64同一稳定版的 arm64aarch64 改用这个
4.10.0.11维护者表中的 beta,2026-08-08,早于当前稳定版不作为默认
4.9.5.0 及更早上一稳定线或更旧版本仅回退时用
beta浮动标签,当前指向 4.10.0.11不要用于 pull 或 Compose
latest浮动多架构标签,2026-10-03 指向 v4.10.1.0不要用于 pull 或 Compose

latest 会随维护者下一次推送改指向。升级时改 Compose 里的具体版本标签,并对照标签列表。

2.2 用轩辕镜像加速拉取

x86_64:

docker pull docker.xuanyuan.run/amilys/embyserver:4.10.1.0-amd64

Ubuntu 24.04 实测:

4.10.1.0-amd64: Pulling from amilys/embyserver
Digest: sha256:9c457402dcf38b1fb116bfaa1b5a2e9c2eb8001adc2e7743e86cbe63d178c433
Status: Downloaded newer image for docker.xuanyuan.run/amilys/embyserver:4.10.1.0-amd64
docker.xuanyuan.run/amilys/embyserver:4.10.1.0-amd64

aarch64 改为:

docker pull docker.xuanyuan.run/amilys/embyserver:4.10.1.0-arm64

三、Docker Compose 部署(主路径)

按这个顺序做:建立 config/config 目录,写入 compose.yaml,执行 docker compose up -d,再打开向导。

开始之前确认:

  • 工作目录是 /www/wwwroot/embyserver。macOS 换成 ~/docker/embyserver。
  • 宿主机 8096 映射到容器 8096。本机若已经占用 8096,把冒号左边改成别的端口,例如 18096:8096,后文网址同步改端口。
  • 镜像标签与上一节一致。ARM 机器把 image 改成 4.10.1.0-arm64。
  • 启动脚本会把 ext.sh 复制到容器内 /config/config/ext.sh,并改镜像里的 /system。父目录不存在,或设置了 UID / GID 时,进程会退出并被重启,浏览器看到连接被拒绝。Ubuntu 24.04 上的失败日志见 FAQ。
  • 片库若已经在别的磁盘,只改 Compose 里卷的宿主机路径,容器内路径保持 /media。向导里选的是容器内路径。

3.1 准备目录

config/config 是给 ext.sh 用的,不要只建到 config 这一层。

sudo mkdir -p /www/wwwroot/embyserver/config/config /www/wwwroot/embyserver/media
cd /www/wwwroot/embyserver
宿主机目录容器路径用途
/www/wwwroot/embyserver/config/config用户、媒体库、插件
/www/wwwroot/embyserver/config/config/config/configext.sh。目录必须在启动前存在
/www/wwwroot/embyserver/media/media电影、剧集等媒体文件。向导里选这个路径

3.2 写入 compose.yaml

片库不在 /www/wwwroot/embyserver/media 时,把卷的左侧路径换成真实目录,右侧仍写 /media。

cd /www/wwwroot/embyserver
cat > compose.yaml <<'EOF'
services:
  emby:
    image: docker.xuanyuan.run/amilys/embyserver:4.10.1.0-amd64
    container_name: embyserver
    restart: unless-stopped
    privileged: true
    ports:
      - "8096:8096"
      - "8920:8920"
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - /www/wwwroot/embyserver/config:/config
      - /www/wwwroot/embyserver/media:/media
EOF

要点:

  • 宿主机 8096 → 容器 8096,浏览器走 HTTP。
  • 宿主机 8920 → 容器 8920。要在 Emby 里配好证书,HTTPS 才会可用。
  • privileged: true 与上面的目录配套。Compose 里不要再加 UID、GID。
  • 不使用 network_mode: host。主机网络和 ports 不能写在一起。DLNA 见常见问题。
  • 这一节不挂 GPU。需要核显时用第七节的 Compose 覆盖本文件。

3.3 启动

cd /www/wwwroot/embyserver
docker compose up -d

Ubuntu 24.04 实测:

[+] up 2/2
 ✔ Network embyserver_default Created
 ✔ Container embyserver       Started

容器起来之后再看状态:

docker compose ps

状态应为 Up,端口映射里能看到 8096 和 8920。

然后再看日志:

docker compose logs --tail 40

Ubuntu 24.04 实测:

Emby扩展启动脚本
Info Main: Emby Server 4.10.1.0
  Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3
  Framework: .NET 8.0.28
  Data path: /config
Info Main: Logs path: /config/logs
Info Main: Cache path: /config/cache
Info Main: Internal metadata path: /config/metadata
Info Main: Local time: 10/06/2026 14:25:22 +08:00
Info App: Emby Server Version: 4.10.1.0
Info App: Copying plugin from /system/plugins/MovieDb.dll to /config/plugins/MovieDb.dll

日志里应有 Emby扩展启动脚本 和 Emby Server 4.10.1.0。插件会继续从 /system/plugins 复制到 /config/plugins。若隔一两秒就重复 Shutdown complete,先按常见问题里的「8096 拒绝连接」处理,先不要打开浏览器。

打开浏览器之前,把地址里的 IP 换成你的服务器地址。

http://<服务器IP>:8096

四、浏览器首次设置

用上一节的地址打开。镜像没有预置管理员密码。向导里创建的第一个用户就是管理员。

向导第一页可以选择 Chinese Simplified,但后面几页和登录后的主页仍可能是英文。侧栏变成「首页」「我的媒体」,要等登录后在 General 里把 Display language 改成 Chinese (China)。

4.1 选择语言

  1. 打开 http://<服务器IP>:8096。
  2. 在 Preferred display language 里选择 Chinese Simplified。
  3. 点击 Next。

Emby 首次打开:Welcome to Emby,首选显示语言下拉框,绿色 Next

Emby 向导语言列表:选中 Chinese Simplified,其下还有 Chinese Traditional

4.2 创建管理员

  1. 在 Create Your First User 里填写用户名。
  2. 填写 New password,并在 New password confirm 里再输入一次。
  3. 点击 Next。

用户名自定。本次填写的是 root。这是 Emby 里的用户名,和宿主机登录无关。密码只在这一步设置。

Emby 创建第一个用户:用户名 root,新密码与确认密码,Previous 与 Next

4.3 添加媒体库

视频放在宿主机的 /www/wwwroot/embyserver/media,或你在 Compose 里改过的那个目录。向导里填的是容器路径 /media。目录里暂时没有文件也可以建库,影片页会显示「共 0 项」;文件放进去之后再扫描。

  1. 在 Setup Media Libraries 点击 New Library。
  2. Content type 选 Movies,Display name 保持 Movies。
  3. 在 Folders 里添加 /media。
  4. Preferred metadata download language 选 Chinese Simplified,Certification country 选 China。
  5. 点击 OK。
  6. 确认卡片上的路径是 /media,再点击 Next。

文件夹不要填宿主机路径 /www/wwwroot/embyserver/media,容器里没有这个目录。也不要选容器根目录 /。

Emby 设置媒体库:Setup Media Libraries,右侧 New Library,中间 Next

Emby 新建媒体库:类型 Movies,文件夹 /media,元数据语言 Chinese Simplified,国家 China

Emby 媒体库卡片:Movies,路径 /media,下方 Next

刮削需要服务器能访问对应的元数据网站。访问不到时,库仍然可以按文件名浏览和播放。

4.4 远程访问

只在家里局域网使用时,关掉 Enable automatic port mapping,再点击 Next。这个开关会尝试用 UPnP 把公网端口映射到本机,部分路由器不支持,也不适合只给内网看片的机器。

本次截图里开关是打开的。后面的控制台会多出一条远程地址,内网播放可以忽略它。

Emby 配置远程访问:Enable automatic port mapping 开关打开,Previous 与 Next

4.5 接受条款

向导进入 Terms of Use 之后:

  1. 打开 I accept the terms of use。
  2. 点击 Next。

Privacy policy 和 Terms of Use 是条款链接,要阅读时再点。同意与否看的是这个开关。

Emby 使用条款:Privacy policy 与 Terms of Use 链接,同意开关已打开

4.6 完成向导

向导最后一页是 You’re Done!。Emby 会开始扫描媒体库。点击 Finish。

Emby 向导结束:You're Done,各平台客户端图标,绿色 Finish

4.7 登录

登录页标题是 Sign in to 加上服务器友好名称。本次名称是容器主机名 6563982f8d43。

  1. 点用户名,或点 Manual Login。
  2. 输入向导里设置的密码。
  3. 点击 Sign In。

Emby 登录页:Sign in to 6563982f8d43,用户 root、Manual Login、Forgot Password

Emby 手动登录:用户名 root,密码已填写,Sign In 与 Cancel


五、主界面与服务器设置

5.1 主页

登录后左侧是 My Media,其中有刚才建的 Movies。目录里还没有视频时,这里只有场记板图标,没有海报。

Emby 主页:左侧 Home 与 Movies,My Media 下是空的 Movies 图标,右上角 Get Emby Premiere

5.2 控制台

右上角齿轮进入设置,再打开 Dashboard。本次页面显示版本 4.10.1.0,Running on http port 8096。活动日志里有用户验证、用户策略和密码更改。

「家庭(局域网)访问」给出的是容器网桥地址。本次是 http://172.21.0.2:8096,同一局域网里的电脑打不开。浏览器和电视客户端用宿主机地址 http://<服务器IP>:8096。

「远程(广域网)访问」是 Emby 探测到的公网地址。只在内网播放时,不要按这一行去映射路由器端口。

顶部的 Please restart the server to finish applying updates,来自插件更新。本次警告是 TheAudioDb 与 Emby Guide Data 更新到 1.0.22.0。要重启时,点服务器名称右侧的电源图标。

Emby 控制台英文界面:版本 4.10.1.0,HTTP 端口 8096,活动日志含用户验证与密码更改

5.3 把界面改成中文

  1. 打开 Emby Web Settings 里的 General。
  2. Display language 选择 Chinese (China)。

保存后刷新页面。左侧会变成「首页」「我的媒体」。

Emby 通用设置:Display language 展开,选中 Chinese (China)

中文界面下打开 Movies。本次目录是空的,页面写着「共 0 项」「未找到项目」。视频放进宿主机媒体目录后,在这个库的菜单里扫描一次。

Emby 中文影片库:Movies,共 0 项,未找到项目,标签有影片、预告片、收藏、文件夹

显示选项在左侧以用户名命名的「偏好设置」里。本次用户是 root,所以菜单是「root 偏好设置」。里面的「显示」本次为:主题 Dark,网页主题 Light,强调色 Emby。

Emby 显示设置:主题 Dark,网页主题 Light,强调色 Emby,首选电视节目显示

改成中文后,控制台仍是版本 4.10.1.0,运行于 HTTP 端口 8096。家庭局域网那一行仍是刚才的容器网桥地址。顶部中文提示是「请重新启动服务器以便更新生效」。

Emby 中文控制台:版本 4.10.1.0,运行于 HTTP 端口 8096,顶部提示请重新启动服务器

5.4 插件与设置菜单

「高级」里的「插件」列出已经复制到 /config/plugins 的项目,包括刮削、字幕、DLNA 和备份。版本号以页面上的为准。

Emby 插件页:我的插件,含 DLNA、Emby Guide Data、MusicBrainz、Nfo Metadata、Open Subtitles、TheAudioDb

设置首页分成 Emby Web 设置、用户偏好设置、Emby Server 三块,右侧都标着 4.10.1.0。直播源加在 Emby Server 的「电视直播」里。添加之后,在界面里手动刷新一次节目指南。

电视和手机安装 Emby 客户端 后,服务器地址填 http://<服务器IP>:8096,用向导里创建的用户登录。播放进度按这个用户保存。

Emby 设置首页:Emby Web 设置、用户偏好设置、Emby Server 三组菜单,版本 4.10.1.0


六、扩展脚本(可选)

不改这个文件也可以建库和播放。容器第一次成功启动后,启动脚本会在下面的路径放一份默认脚本。要改美化、弹幕或外部播放器时再编辑;删掉该文件再重启,容器会重新生成一份。

/www/wwwroot/embyserver/config/config/ext.sh

对应容器内 /config/config/ext.sh。

美化要填写媒体库 ID 才启用。打开已经扫过的媒体库,从浏览器地址栏复制 parentId。多个 ID 用英文逗号分隔。MediaId 留空则不启用美化。库还是空的时候,地址栏里没有 parentId。

extmod 里这三项可以按需删掉:

值作用
embyLaunchPotplayer调用外部播放器
ede.user弹幕
actorPlus隐藏未知演员
  1. 从媒体库页面的地址栏抄下 parentId。
  2. 编辑 ext.sh,把 MediaId 换成库 ID,并按需要调整 extmod。文件里和插件相关的部分如下。
#!/bin/sh

echo "Emby扩展启动脚本"

# MediaId 留空则不启用美化。多个 ID 用英文逗号分隔。
MediaId=""

# embyLaunchPotplayer 外部播放;ede.user 弹幕;actorPlus 隐藏未知演员
extmod='["embyLaunchPotplayer","ede.user","actorPlus"]'

sed -i '/ extmod/s/[.*]/'$extmod'/g' /system/dashboard-ui/ext.js

exit 0
  1. 重启容器。
cd /www/wwwroot/embyserver
docker compose restart
  1. 在浏览器按 Ctrl+F5 强制刷新网页。

七、硬件转码(可选)

先能在浏览器里直接播放,再考虑转码。软解只占用 CPU,不必挂设备。

Emby 的硬件转码属于 Premiere 功能,需要你自己的有效授权。在服务器设置的 Premiere 页面填入你的授权后再配转码。

核显或支持 VAAPI 的显卡,把渲染节点送进容器。第三节已经打开 privileged: true,进程以 root 运行,不必再写 UID、GID。

先确认设备节点存在:

ls -l /dev/dri

/dev/dri 不存在时,不要加设备行。在第三节的 Compose 上保留 privileged: true,只增加 devices。

cd /www/wwwroot/embyserver
cat > compose.yaml <<'EOF'
services:
  emby:
    image: docker.xuanyuan.run/amilys/embyserver:4.10.1.0-amd64
    container_name: embyserver
    restart: unless-stopped
    privileged: true
    ports:
      - "8096:8096"
      - "8920:8920"
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - /www/wwwroot/embyserver/config:/config
      - /www/wwwroot/embyserver/media:/media
    devices:
      - /dev/dri:/dev/dri
EOF

然后重新创建容器:

cd /www/wwwroot/embyserver
docker compose up -d
  1. 打开 Emby 设置里的转码。
  2. 在硬件加速里选择与这块显卡匹配的方式。
  3. 保存。

首选解码器列表里出现这块显卡,说明设备已经进容器。列表仍是空的,先确认 /dev/dri 已写进 Compose,并且容器是用 privileged: true 重新创建的。NVIDIA 显卡还要在宿主机安装 NVIDIA Container Toolkit,做法见官方 emby/embyserver 说明里的 NVDEC / NVENC 一节,不要只挂 /dev/dri。


八、备选:docker run

没有 Compose 时用这一节。参数与第三节相同。已有同名容器时先停掉再删,避免端口占用。config/config 目录仍要先建好。

sudo mkdir -p /www/wwwroot/embyserver/config/config /www/wwwroot/embyserver/media
docker rm -f embyserver

docker run -d 
  --name embyserver 
  --restart unless-stopped 
  --privileged 
  -p 8096:8096 
  -p 8920:8920 
  -e TZ=Asia/Shanghai 
  -v /www/wwwroot/embyserver/config:/config 
  -v /www/wwwroot/embyserver/media:/media 
  docker.xuanyuan.run/amilys/embyserver:4.10.1.0-amd64

需要核显时再追加 --device /dev/dri:/dev/dri。

查看状态:

docker ps --filter name=embyserver
docker logs --tail 80 embyserver

浏览器同样打开 http://<服务器IP>:8096。


九、升级

升级只改镜像标签,保留配置目录和片库目录。

  1. 在标签列表选定新的具体版本标签。
  2. 修改 compose.yaml 里的 image。
  3. 拉取并重新创建容器。
cd /www/wwwroot/embyserver
docker compose pull
docker compose up -d

不要删除 /www/wwwroot/embyserver/config。用户、媒体库和播放进度都在这里。片库目录也不要随升级挪走,除非你同时改 Compose 里的卷。

docker run 部署的,先用新标签 docker pull,再 docker rm -f embyserver,然后用第八节的命令换上新标签重新运行。两个 -v 路径保持不变。

网页仍是旧样式时,按 Ctrl+F5 强制刷新。改过 ext.sh 的,升级后看脚本是否被新版本覆盖,需要的话把 MediaId 和 extmod 再写回去。


十、常见问题

10.1 库是空的,或向导里看不到视频

页面写「未找到项目」「共 0 项」,且文件夹是 /media 时,多半是宿主机目录里还没有视频。把文件放进卷的左侧目录,再在这个库的菜单里扫描。

文件夹若填了 /www/wwwroot/embyserver/media 这类宿主机路径,容器里没有这个目录,扫描结果也是空的。改成 /media,确认 Compose 是「宿主机真实目录 → /media」,执行 docker compose up -d 后再扫描。

10.2 浏览器提示 8096 拒绝连接

docker compose ps 显示 Up,只说明容器进程还在。Emby 自己退出时,Docker 会按 restart: unless-stopped 立刻再拉起,端口上没有服务,浏览器就是 ERR_CONNECTION_REFUSED。

Ubuntu 24.04 上用 UID=1000、且没有 /config/config 目录时,日志是:

cp: can't create '/config/config/ext.sh': No such file or directory
./run: line 9: /config/config/ext.sh: not found
Info Main: Application path: /system/EmbyServer.dll
Info Main: Shutdown complete

随后每隔一两秒重复 Emby扩展启动脚本 和 Shutdown complete。端口上没有服务在听,所以浏览器是 ERR_CONNECTION_REFUSED。

  1. 执行 docker compose down。
  2. 建好 /www/wwwroot/embyserver/config/config。
  3. 按第三节重写 compose.yaml:加上 privileged: true,去掉 UID、GID。
  4. 执行 docker compose up -d,再看日志。

日志里出现 Emby Server 4.10.1.0,并且不再循环 Shutdown complete 之后,再打开 http://<服务器IP>:8096。

10.3 和官方镜像、Jellyfin 怎么区分

amilys/embyserver(本文)emby/embyserverJellyfin
维护者amilysEmby 官方Jellyfin 项目
配置目录/config/config/config
HTTP 端口809680968096
运行用户特权模式,不设置 UID / GIDUID / GID / GIDLIST各构建不同
额外脚本启动时执行 ext.sh,可开关美化、弹幕、外部播放器官方镜像不含这份脚本另一套服务器,插件体系不同

已经在用官方 emby/embyserver 时,不要把两套容器指向同一个配置目录。本文的 ext.sh 只属于这个社区镜像。Jellyfin 的库和用户也不能直接当成 Emby 的 /config 来挂。

10.4 群晖说明里的高权限

维护者在镜像说明里写的是群晖路径:勾选 Privileged,把 /docker/emby 映射到 /config,并且不改环境变量。Linux 主路径同样使用 privileged: true,不设置 UID、GID。配置目录换成 /www/wwwroot/embyserver/config,并多建一层 config/config。

10.5 电视发现不了服务器

局域网发现使用 UDP 7359,DLNA 使用 UDP 1900。桥接网络下只映射了 TCP 8096 时,客户端仍可以用手动地址 http://<服务器IP>:8096 连接。

要做 DLNA 或局域网自动发现时,官方 Emby 容器使用主机网络。先停掉容器。在 compose.yaml 的 emby 服务里删掉整段 ports,加上 network_mode: host,再执行 docker compose up -d。主机网络和 ports 不能同时写。

使用主机网络后,服务直接占用宿主机的 8096 和 8920。这两个端口已被占用时,先停掉占用进程,或继续用桥接,在客户端里手动填写 http://<服务器IP>:8096。

10.6 硬件转码没有解码器

先确认两件事:/dev/dri 已挂进容器,并且这个 Emby 用户具有有效的 Premiere 授权。设置页的硬件解码器列表是空的时,先看 docker compose ps 里的容器是不是用带 devices 的 Compose 重新创建的。

NVIDIA 不要只挂 /dev/dri。宿主机需要 NVIDIA Container Toolkit,并按官方镜像说明配置 runtime。

10.7 8096 已经被占用

改 Compose 里冒号左边的端口,例如 "18096:8096"。容器内仍然是 8096。浏览器和客户端地址改成 http://<服务器IP>:18096。改完执行 docker compose up -d。


十一、命令速查

# 拉取(ARM 改为 4.10.1.0-arm64)
docker pull docker.xuanyuan.run/amilys/embyserver:4.10.1.0-amd64

# 目录(ext.sh 的父目录必须先在)
sudo mkdir -p /www/wwwroot/embyserver/config/config /www/wwwroot/embyserver/media

# Compose
cd /www/wwwroot/embyserver
docker compose up -d
docker compose ps
docker compose logs --tail 80
docker compose restart
docker compose down

# 备选 docker run
docker run -d 
  --name embyserver 
  --restart unless-stopped 
  --privileged 
  -p 8096:8096 
  -p 8920:8920 
  -e TZ=Asia/Shanghai 
  -v /www/wwwroot/embyserver/config:/config 
  -v /www/wwwroot/embyserver/media:/media 
  docker.xuanyuan.run/amilys/embyserver:4.10.1.0-amd64

浏览器访问 http://<服务器IP>:8096。媒体库文件夹填 /media。


十二、延伸阅读

资源链接
amilys/embyserver 镜像页https://xuanyuan.cloud/zh/r/amilys/embyserver
amilys/embyserver 概览https://xuanyuan.cloud/r/amilys/embyserver
amilys/embyserver 标签列表https://xuanyuan.cloud/r/amilys/embyserver/tags
Docker Hub · amilys/embyserverhttps://hub.docker.com/r/amilys/embyserver
Docker Hub · emby/embyserverhttps://hub.docker.com/r/emby/embyserver
Emby 官网https://emby.media/
Emby 客户端下载https://emby.media/download.html
GitHub · Nolovenodie/emby-crxhttps://github.com/Nolovenodie/emby-crx
GitHub · RyoLee/dd-danmakuhttps://github.com/RyoLee/dd-danmaku
GitHub · bpking1/embyExternalUrlhttps://github.com/bpking1/embyExternalUrl
轩辕镜像使用手册https://xuanyuan.cloud/usage

阅读原文

  • 轩辕镜像官方博客:https://xuanyuan.cloud/blog/embyserver-docker-deploy
老旧电脑变身高清影音库:飞牛NAS+小雅Emby全家桶10分钟极速部署教程 本文提供了一套利用闲置老旧电脑快速搭建私人高清影音库的极简方案。通过部署飞牛NAS系统,并借助Docker容器一键安装小雅Emby全家桶,用户无需下载资源即可访问海量影视内容。教程核心在于十分钟完成关键部署,实现阿里云盘资源的无缝整合与播放,是低门槛、高性价比的家庭娱乐解决方案。 阅读详情

相关推荐

直链播放:用Nginx搭建零代理家庭书影音系统

直链播放是一种轻量级家庭媒体访问范式,其核心原理是绕过Emby、Jellyfin等全功能媒体服务器的中间代理层,直接通过HTTP协议将NAS存储路径映射为可浏览器直访的静态资源URL。技术价值在于降低延迟、消除会话依赖、提升跨设备兼容性,并显著减少CPU与I/O开销。典型应用场景包括客厅电视秒播有声书、通勤手机直放冷门纪录片、老旧TV盒子无感接入等真实家庭需求。它不依赖Docker或复杂配置,而是基于Nginx的URI重写、Range请求优化与精准MIME类型控制实现稳定流式交付,本质是将‘访问文件’还原为

weixin_30265103的博客 406

NAS玩家必装!Emby让你的NAS变成私人影音库

另外,emby还有会员,可以根据自己的需求决定是否开通。接着创建用户,我第一次设置的时候改了用户名,登录的时候一直有问题,不清楚是没记住密码,还是由于修改用户名的原因,第二次重新装的时候用户名直接默认,这里大家需要留意下。Emby可以将你存在各个地方的电影、电视剧等资源集中管理,支持自动识别资源信息,获得海报墙,它不仅支持在电脑上使用,也支持在手机、电视等设备上使用。保存后,会变成中文界面。Emby是一个非常经典的影视管理工具,如果你的NAS存了很多的电影,可以尝试下Emby,部署一个属于自己的私人影库。

m0_72778094的博客 294

NAS上用Docker部署Omnibox 2.11打造家庭影音中枢

Omnibox是一款运行在浏览器中的轻量级家庭媒体操作系统,其核心能力在于将本地NAS转化为统一影音终端。它基于Web技术实现跨设备访问,依托Docker容器化部署实现版本可控、硬件加速(如Intel QSV)与服务解耦,显著提升H.265/AV1视频硬解、IPTV直播响应及元数据管理效率。相比传统套件中心方案,Docker部署可规避内核兼容、驱动直通与网络组播等底层限制,支持与Jellyfin、Home Assistant等生态工具深度集成。本文聚焦NAS平台(如群晖DS920+)下Omnibox 2.1

weixin_30219613的博客 387

用docker安装emby的详细步骤

搭建个人存储服务器NAS,媒体播放器少不了。群晖自带的Video Station据说没有Emby、Plex好用。Plex是收费的,Emby是开源的。 本文看似很长。实际上有一半篇幅是关于设置。亲测,那些设置不设置也没关系,也可以使用,入门者不需要看。 第一步:安装 通过docker安装在docker-注册表中搜索emby。双击即可下载。在docker-映像,启动在docker-容器中可以找到它 第二步,启动 虽然我们设置的端口是8096,但是http://IP:8096并不能启动,因为8096只是容器端口,

Chiyunyinlong的博客 2万+

威联通NAS快速部署jellyfin影音中心:Docker命令行实战(含硬件加速与元数据自动抓取)

本文详细介绍了在威联通NAS上通过Docker命令行部署Jellyfin影音中心的完整实战流程。核心内容包括开启SSH、检查并配置硬件解码能力、规划媒体库目录,以及使用一行Docker命令完成部署并详解每个关键参数。重点指导了如何在Jellyfin中开启硬件加速以大幅降低CPU占用,并配置元数据刮削器自动获取影片信息与海报,最终打造一个高效、免费的私人影音流媒体服务器。

l3m4n的博客 760

《玩转Docker》[应用篇13]:Docker安装部署Emby及使用技巧:家庭媒体服务器

Docker部署Emby媒体服务器简明指南 Emby是一款支持跨平台的多媒体服务器,能自动整理影视、音乐资源并生成精美海报墙。通过Docker可快速部署: 创建映射目录:/opt/emby/{config,media} 执行docker run命令或使用docker-compose.yml配置 访问8096端口完成初始化设置 使用技巧: 规范文件命名(如《电影名(年份).mp4》) 配置多源刮削器(TMDB/TVDB/豆瓣) 设置自适应码率优化远程播放 通过同名.srt文件实现自动加载字幕 支持硬件转码、多

专注大数据、云计算、人工智能、机器人领域技术传播 3294

外网访问网页编写代码工具

code-server 是一款在线代码编写编辑器,用户可以直接在浏览器中直接使用 VS Code 的功能,无需安装本地 IDE‌。在本地用 docker 安装部署 code-server 以及结合路由侠内网穿透实现外网访问本地部署的 code-server。

lyxnwct的博客 1752

Keil中搭建自动化单元测试框架Unity

前言:   虽然一些C++的自动化单元测试框架也能用来C语言单元测试,但那样我们编写C语言程序时需要符合C++的标准,这样有一些C的特性是无法使用的,限制C的特性使用不太好,于是找了一个全部用C实现的自动化测试框架。Unity是一个简单且直接的自动化单元测试框架,它由很少的几个文件构成。 搭建环境:   1.从github上下载最新版本的Unity源码,下载链接:https://github...

程序员的自我修炼 3893

如何零成本解锁Emby高级功能?5分钟快速部署指南

您是否还在为Emby Premiere的高昂订阅费用而犹豫?是否羡慕他人能够享受硬件加速转码和完整移动端功能?今天,我将为您揭秘一种完全免费的解决方案,让您轻松拥有完整的高级体验。 ## 痛点分析:Emby付费墙的困扰 很多Emby用户都会遇到这样的困境: **功能受限的烦恼** - 硬件转码无法启用,CPU负载居高不下 - 移动设备播放体验大打折扣 - 个性化主题和插件安装受限 - 同步功

gitblog_00177的博客 643

Proteus仿真实战:ADC0832时序解析与51单片机精准电压采集

本文详细解析了ADC0832模数转换芯片在Proteus仿真环境中的时序控制与51单片机驱动实现。通过实战代码示例和精度优化技巧,帮助开发者掌握电压采集的关键技术,包括时序配置、数据校验和噪声抑制等核心要点,提升嵌入式系统设计的精准度与可靠性。

weixin_29172963的博客 872

ServiceNow Discovery & CMDB Interview Questions and Answers (2025)

【代码】ServiceNow Discovery & CMDB Interview Questions and Answers (2025)

weixin_47584092的博客 910

Jellyfin媒体服务器完整指南:如何快速搭建个人专属影音中心

还在为不同设备上的媒体文件无法统一管理而烦恼吗?想拥有像Netflix一样的私人媒体库却担心技术门槛太高?今天,我将为你详细介绍如何通过Jellyfin这款免费开源的媒体服务器软件,轻松打造属于你自己的个人媒体中心!无论你是技术新手还是资深玩家,都能找到适合自己的部署方案。 Jellyfin是一个功能强大的媒体服务器解决方案,它能够将你的电影、电视剧、音乐和照片集中管理,并通过网络在任何设备上流

gitblog_00369的博客 435

PyTorch实战(26)——PyTorch分布式训练

在本节中,我们将探讨如何通过跨机器和机器内多进程的分布式训练来加速模型训练过程。我们将系统学习 PyTorch 提供的三大分布式训练 API——torch.distributed、torch.multiprocessing 以及 torch.utils.data.distributed.DistributedSampler,使用这些 API 能够极大的简化分布式训练,介绍如何使用 PyTorch 的分布式训练工具,在 CPU 和 GPU 上加速训练。

盼小辉丶的博客 3760

怎样用Jellyfin轻松打造你的私人Netflix:免费开源媒体服务器完全攻略

还在为各大流媒体平台的会员费而烦恼吗?想拥有完全掌控的私人媒体库却担心技术门槛太高?今天我要为你揭秘一个完全免费、开源的个人媒体服务器神器——Jellyfin!无论你是技术小白还是资深玩家,都能在30分钟内搭建属于自己的专属影音中心。🎬 Jellyfin作为一款功能强大的媒体服务器软件,能够将你电脑中的电影、电视剧、音乐和照片集中管理,并通过网络在任何设备上流畅播放。最棒的是,它完全免费开源,

gitblog_00741的博客 1081

故障诊断 | CNN-BiGRU-Attention故障诊断

故障诊断 | CNN-BiGRU-Attention故障诊断

机器学习之心的博客,关注并私信文章链接,获取对应文章源码和数据。 673

数据资产可视化分析:PowerBI在大数据管理中的实战

目的:帮你搞懂“为什么数据资产需要可视化?”“PowerBI能帮企业解决什么问题?”,并掌握用PowerBI做大数据可视化的实战技巧。范围:覆盖数据资产定义、可视化分析原理、PowerBI核心功能(数据连接、建模、可视化)、零售企业实战案例,以及未来趋势与挑战。背景:为什么企业的数据像乱堆的玩具?核心概念:数据资产、可视化分析、PowerBI分别是什么?它们怎么配合?实战步骤:用PowerBI帮零售企业整理“销售玩具箱”,做出能指导决策的仪表盘;应用场景:不同部门怎么用这个“整理好的玩具箱”?

2501_92132293的博客 905

3步搭建你的专属Jellyfin媒体服务器:免费开源的家庭影院解决方案

还在为不同设备间的媒体文件管理而烦恼吗?想拥有像Netflix一样的私人媒体库却担心技术门槛太高?今天,我将为你详细介绍如何通过Jellyfin这款免费开源的媒体服务器软件,轻松打造属于你自己的个人媒体中心!无论你是技术新手还是资深玩家,都能找到适合自己的部署方案。Jellyfin媒体服务器是一个功能强大的开源解决方案,能够将你的电影、电视剧、音乐和照片集中管理,并通过网络在任何设备上流畅播放。最

gitblog_01166的博客 569

Python爬虫实战:携程旅游平台数据爬取(酒店+机票+景点),破解加密与反爬(附完整代码)

携程的反爬机制再复杂,核心逻辑都是“识别非真实用户的请求”,而爬虫的核心就是“让请求看起来像真实用户的行为”。本文的方案从登录态处理、参数加密破解、动态数据抓取,到反爬应对,都是围绕“模拟真实”展开:用Playwright模拟真实浏览器登录,用住宅代理模拟真实用户IP,用随机延迟模拟真实用户的操作频率。掌握了这个核心思路,无论平台的反爬如何升级,都能找到应对方法。当然,爬虫技术是一把双刃剑,合理使用才能发挥其价值。如果你的爬虫项目中遇到了携程的反爬问题,不妨按照本文的步骤试试,大概率能解决问题。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 2601

Docker搭建Plex流媒体服务并播放自己本地视频

Docker搭建Plex流媒体服务并播放自己本地视频

weixin_45565886的博客 1万+

天爱验证码wasm验证码逆向

本文分析了某网站采用WASM加密技术的情况,发现其加密方式主要针对data和轨迹信息,整体加密逻辑变化不大。通过反混淆技术可以还原代码,并确认加密过程分为两步:先对原始参数逐个加密,再调用WASM模块进行最终加密。研究发现关键参数drives和ki都存储在WASM模块内,通过提取wasm_exec.js文件即可直接使用该加密功能。本文仅提供技术研究思路,强调严禁用于任何违法行为。

码王吴彦祖的博客 932

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Emby全功能体验:免费解锁工具极简方案

在数字媒体时代,拥有强大的媒体服务器解决方案已成为家庭娱乐的核心需求。emby-unlocked作为一款专业的媒体服务器高级功能解锁工具,为用户提供了零成本体验Emby Premiere全部特性的可能性。本文将系统介绍如何通过这款工具实现媒体服务器高级功能解锁,帮助用户构建专业级家庭媒体中心,享受流畅的影音体验。 ## 如何通过工具实现核心价值 emby-unlocked工具的核心价值在于打破

gitblog_00362的博客 478

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Jellyfin媒体服务器部署完全指南:四种方式打造个人专属影音中心

你是否厌倦了在不同设备间来回传输媒体文件的繁琐操作?想要搭建一个像Netflix一样功能强大但又完全免费的个人媒体库吗?Jellyfin正是你寻找的答案!作为一款开源的媒体服务器软件,Jellyfin让你能够轻松管理、组织和流式传输你的电影、电视剧、音乐和照片,完全掌控自己的数据隐私和安全。🚀 无论你是技术新手还是资深开发者,本文都将为你提供四种不同的Jellyfin部署方式,从最简单的安装包

gitblog_00631的博客 358

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

ChineseSubFinder:5分钟搭建全自动中文字幕下载系统

还在为追剧时找不到合适的中文字幕而烦恼吗?手动搜索、下载、重命名字幕的时代已经过去!ChineseSubFinder 为你带来全新的自动化中文字幕下载体验,彻底解放你的双手,让你专注于享受精彩内容。🎬 ## 🤔 为什么你需要字幕自动化工具 想象一下这样的场景:你刚下载了一部期待已久的美剧,却发现没有中文字幕。于是你开始在各个字幕网站反复搜索,下载多个版本尝试匹配,手动重命名字幕文件,调整时

gitblog_00878的博客 950

Jellyfin终极指南:三步搭建你的免费个人媒体中心

还在为不同设备上的电影、音乐和照片分散存储而烦恼吗?想要拥有像Netflix一样精美的个人媒体库,但又不想支付昂贵的订阅费用?今天我要为你介绍一款完全免费、开源的媒体服务器解决方案——Jellyfin!🎬 Jellyfin是一个功能强大的自由软件媒体系统,让你完全掌控自己的媒体内容。与商业化的Plex和Emby不同,Jellyfin没有任何隐藏费用或功能限制,真正做到了"你的数据,你做主"!无

gitblog_00175的博客 336

永久免费看全网VIP影视?不如用Jellyfin搭建本地影音库

流媒体资源管理涉及存储、元数据刮削与转码技术,通过本地化部署实现内容自主控制。其原理是服务端集中管理媒体文件,客户端按需播放,支持硬件加速转码以适配不同设备。技术价值在于避免平台依赖、保护隐私并实现一次整理终身受益。典型应用于家庭影音中心、多用户点播及移动离线观看。Jellyfin作为开源方案,结合聚合搜索与本地媒体库搭建,可打造私人影院,彻底告别VIP平台切换与付费烦恼。

weixin_29973493的博客 258
上一篇: Docker 部署 DeepSeek Harness:轻松搭建局域网里的 AI Agent 平台
下一篇: Docker 部署 TeslaMate:轻松搭建特斯拉车辆数据记录平台
java_logo
博客等级 码龄18年 324粉丝 236原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值