树莓派家庭媒体服务 - Jellyfin

Photo by Jens Kreuter / Unsplash
树莓派烹饪计划(二):家庭媒体服务

下载

使用 Docker 镜像 jellyfin/jellyfin,参见该项目的 Github 主页,以及Jellyfin 官网

配置

使用 Docker Compose 完成配置,示例如下:

version: '3.7'

services:
  jellyfin:
    image: jellyfin/jellyfin
    deploy:
      mode: replicated
      replicas: 1
      placement:
        constraints:
          - node.labels.role == nfs
      restart_policy:
        condition: on-failure
        delay: 10s
        max_attempts: 3
        window: 10s
    networks:
      - host
    # ports:
    #   - "8096:8096"
    #   - target: 1900 # UPNP 服务端口
    #     published: 1900
    #     protocol: udp
    #     mode: host
    #   - target: 8200
    #     published: 8200
    #     protocol: tcp
    #     mode: host
    #   - target: 8920
    #     published: 8920
    #     protocol: tcp
    #     mode: host
    volumes:
      - "jellyfin-config:/config"
      - "/data/stack/download:/media"

networks:
  host:
    external: true
    name: host

volumes:
  jellyfin-config:
    driver: local
    driver_opts:
      type: "nfs"
      o: "addr=192.168.0.254,rw,nolock"
      device: ":/data/stack/media/config"
  # jellyfin-media:
  #   driver: local
  #   driver_opts:
  #     type: "nfs"
  #     o: "addr=192.168.0.254,rw,nolock"
  #     device: ":/data/stack/download"

官方文档

备注

1. Swarm 模式下的 Host 网络

需要注意的是,在集群模式(Swarm)下,host 网络不能与ports 同时出现,参考

  1. Can't use swarm-mode services with host network #34215
  2. Docker 之 Host 网络
  3. Use Host networking

2.关于 DLAN 的相关技术

  1. 基于DLNA实现iOS,Android投屏:基本概念
  2. 基于DLNA实现iOS,Android投屏:SSDP发现设备
  3. UPNP 协议介绍
  4. aria2 及 DLNA 服务 Docker 部署

3. 其他媒体中心

IInfinity

IInfinity

大道虽简,知易行难。
CN