[Docker] 自建 emby 影音库
emby 介绍
Emby(原名Media Browser)是一个主从式架构的媒体服务器软件,可以用来整理服务器上的视频和音频,并将音频和视频流式传输到客户端设备。
Emby服务器端支持Microsoft Windows、Linux、MacOS、FreeBSD,客户端支持HTML5网页,Android和IOS等移动操作系统,Roku、Amazon Fire TV、Chromecast和Apple TV等流媒体设备,LG智能电视和三星智能电视等智能电视,以及PlayStation3 PlayStation4 Xbox 360和Xbox One等游戏机。
(引自wikipedia)
换句话说就是把自己收集的资源,通过 emby 自建个人电影和音乐资料库。
工具介绍
- 服务器,建议为Debian 11,4GB内存。
- SSH 工具,建议使用 Putty 或者 taddy。
- 域名*1(可选)
部署步骤
安装 bt 面板英文版
宝塔面板(bt.cn)是一个不错的服务器管理界面,但是中文版需要输入手机号。因此安装英文版(www.aapanel.com)是一个不错的选择。
Putty 通过 SSH 连接到远程服务器。
输入以下命令(复制后在 Putty 窗口右键可以直接粘贴)
wget -O install.sh http://www.aapanel.com/script/install-ubuntu_6.0_en.sh && bash install.sh aapanel
回车后,安装,不需要 SSL。
安装成功后,自动显示访问地址、登录账号、登录密码。复制留存备用。
安装 docker
通过 docker 对生产环境部署,可以方便进行迁移和升级。
wget -qO- https://get.docker.com/ | sh
回车后完成安装。
ls -la /dev/dri
chmod a+x /dev/dri
安装 emby
本次使用 docker 镜像为 lovechen/embyserver:latest
,其他镜像可以自行网络搜寻。
修改以下内容完毕后,整体复制后回车。
docker run -d \
--name emby \
--network=host \
--restart always \
-p 8096:8096 \
-p 8920:8920 \
-p 1900:1900/udp \
-p 7359:7359/udp \
-v /etc/emby:/config \
-v /home/gdrive/:/gdrive \
-e TZ="Asia/Shanghai" \
--device /dev/dri:/dev/dri \
-e UID=0 \
-e GID=0 \
-e GIDLIST=0 \
lovechen/embyserver:latest
Nginx 反代(reverse proxy)添加域名
在 putty 连接上服务器后,输入 docker inspect emby,获取 emby 本地 IP 地址。
输入 bt,获取登录地址和登录账号密码登录 bt 面板。
安装 nginx ,其他不需要可以去掉。
选择新建网站,添加域名,申请 SSL。
点开网站配置,选择反向代理(reverse proxy),添加。
点开配置,全选后替换为以下内容:
#PROXY-START/
client_max_body_size 5000M;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For '$proxy_add_x_forwarded_for';
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Sec-WebSocket-Extensions $http_sec_websocket_extensions;
proxy_set_header Sec-WebSocket-Key $http_sec_websocket_key;
proxy_set_header Sec-WebSocket-Version $http_sec_websocket_version;
proxy_cache off;
proxy_redirect off;
proxy_buffering off;
location / {
proxy_pass ip:port;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_ssl_verify off;
proxy_http_version 1.1;
proxy_set_header Host $http_host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 86400;
}
location ~* \.(gif|png|jpg|css|js|woff|woff2)$
{
proxy_pass ip:port;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
expires 12h;
}
#PROXY-END/
使用
网页访问 IP:8096,根据步骤添加文件库和视频库。
docker 操作
docker ps # 显示当前运行镜像
docker start emby # 启动 emby
docker restart emby # 重启 emby
docker stop emby # 关闭 emby