Docker搭建Emby

Emby是一款媒体服务器应用程序,与Plex和Kodi等服务类似,它允许用户整理个人媒体库(包括视频、音频和图片),并通过网络流式传输到各种设备上。用户可以在家庭网络内或通过互联网远程访问媒体库,Emby还能自动转码以适配不同设备的播放需求。

Docker是一个开源平台,它能使应用程序与其运行环境打包在一起,形成一个轻量级、可移植的容器,可以在任何支持Docker的机器上运行。Emby的Docker镜像提供了一个预打包的Emby服务器,可以轻松部署和运行。

使用Docker CLI搭建Emby

  1. 拉取Emby的Docker镜像:

    sh 复制代码
    docker pull emby/embyserver:latest

    emby/embyserver:latest 是从Docker Hub上获取最新版Emby镜像的命令。

  2. 创建一个新的Docker容器并运行Emby:

    sh 复制代码
    docker run -d \
      --name emby-server \
      -p 8096:8096 \
      -p 8920:8920 \
      -e UID=1000 -e GID=1000 \
      -v /path/to/library:/config \
      -v /path/to/media:/media \
      emby/embyserver:latest

    解释每个参数的作用:

    • -d: 后台运行容器。
    • --name emby-server: 给容器命名为emby-server
    • -p 8096:8096: 将容器内的8096端口映射到宿主机的8096端口,这是Emby的默认HTTP访问端口。
    • -p 8920:8920: 将容器内的8920端口映射到宿主机的8920端口,这是Emby的默认HTTPS访问端口。
    • -e UID=1000: 设置环境变量UID,这代表在容器中运行Emby进程的用户ID。
    • -e GID=1000: 设置环境变量GID,这代表在容器中运行Emby进程的用户组ID。
    • -v /path/to/library:/config: 将宿主机的/path/to/library目录映射到容器内的/config路径,这个目录用来存储Emby的配置文件和数据。
    • -v /path/to/media:/media: 将宿主机的/path/to/media目录映射到容器内的/media路径,这里是媒体文件存放的位置。

使用Docker Compose搭建Emby

创建一个名为docker-compose.yml的文件,并填入以下内容:

yaml 复制代码
version: '3'
services:
  emby:
    image: emby/embyserver:latest
    container_name: emby-server
    user: "1000:1000"
    volumes:
      - /path/to/library:/config
      - /path/to/media:/media
    ports:
      - "8096:8096"
      - "8920:8920"
    restart: always

解释文件内容:

  • version: 指定Docker Compose的文件格式版本。
  • services: 定义要运行的服务列表。
  • emby: 定义服务名。
  • image: 指定要使用的Docker镜像。
  • container_name: 给容器命名。
  • user: 指定容器内运行进程的用户ID和组ID。
  • volumes: 映射宿主机路径和容器路径,用于持久化数据。
  • ports: 映射端口,使得容器服务可以被宿主机访问。
  • restart: 设置容器的重启策略。

要启动Emby服务,执行以下命令:

sh 复制代码
docker-compose up -d

这里的docker-compose up -d命令用于根据docker-compose.yml文件的定义来启动和运行服务。-d参数使服务在后台运行。

确保将/path/to/library/path/to/media替换成实际的宿主机路径。需要创建这些目录,如果还没有的话,并确保它们拥有合适的权限。

服务启动后,就可以通过浏览器访问http://host-ip:8096来使用Emby的Web界面了。如果设置了SSL,也可以使用https://host-ip:8920进行安全访问。

相关推荐
雪域迷影5 小时前
PostgreSQL Docker Error – 5432: 地址已被占用
数据库·docker·postgresql
福大大架构师每日一题6 小时前
22.1 k8s不同role级别的服务发现
容器·kubernetes·服务发现
莹雨潇潇6 小时前
Docker 快速入门(Ubuntu版)
java·前端·docker·容器
tangdou3690986557 小时前
1分钟搞懂K8S中的NodeSelector
云原生·容器·kubernetes
tangdou36909865510 小时前
Docker系列-5种方案超详细讲解docker数据存储持久化(volume,bind mounts,NFS等)
docker·容器
later_rql10 小时前
k8s-集群部署1
云原生·容器·kubernetes
漫无目的行走的月亮13 小时前
在Docker中运行微服务注册中心Eureka
docker
大G哥15 小时前
记一次K8S 环境应用nginx stable-alpine 解析内部域名失败排查思路
运维·nginx·云原生·容器·kubernetes
大道归简16 小时前
Docker 命令从入门到入门:从 Windows 到容器的完美类比
windows·docker·容器
zeruns80217 小时前
如何搭建自己的域名邮箱服务器?Poste.io邮箱服务器搭建教程,Linux+Docker搭建邮件服务器的教程
linux·运维·服务器·docker·网站