使用 1Panel 定制化部署 LibreTV开源在线视频解析播放器,并通过域名进行访问。

1. 简介

本文演示了如何借助 1Panel 这一轻量级服务器管理面板,通过 Docker Compose 一键部署开源在线视频解析播放器 LibreTV。部署完成后,你即可拥有私有的视频聚合与解析平台,无需复杂运维。

2. 前期准备

  • 已在目标服务器或 VPS 上完成 1Panel 安装并登录面板。
  • 确保服务器上已安装 Docker 与 Docker Compose和OpenResty。
  • 在容器/网络里面确保 1Panel “网络管理”中已创建名为 1panel-network 的外部网络。

3. 在 1Panel 中部署 LibreTV

3.1 新建 Docker Compose 应用

  1. 登录 1Panel Web 控制台。
  2. 进入“网站” → “创建网站” → “反向代理”。
  3. 填写网站域名(如 name.com),端口默认80(可自定义端口,建议默认80),代理地址填写 127.0.0.1:26678(后续需要反向代理的端口,可以填写除80/443/22等系统服务端口外的任意端口)然后确认。

3.2 编写并粘贴 docker-compose.yml

点击网站目录图标进入网站目录,点击左上角创建文件,文件名称docker-compose.yml,单击点击你所创建的文件,将以下内容完整复制并粘贴至编辑框中,然后保存。

YAML
version: '3.8'  # 指定 Docker Compose 文件版本,兼容最新特性
 
services:
  libretv:
    image: bestzwei/libretv:latest  # 使用官方最新镜像
    container_name: libretv         # 容器名称,便于管理
    networks:
      - 1panel-network               # 加入 1Panel 预设网络
    ports:
      - "127.0.0.1:26678:80"         # 将宿主机本地 26678 端口映射到容器 80 端口,仅本地可访问
    environment:
      - PASSWORD=11111111           # 访问密码,登录时需输入
      - TZ=Asia/Shanghai             # 设置容器时区为上海
    restart: unless-stopped          # 异常退出自动重启
    healthcheck:                     # 健康检查配置
      test: ["CMD-SHELL", "curl -f http://localhost:80 || exit 1"]  # 检测服务可用性
      interval: 30s                  # 检查间隔
      timeout: 10s                   # 单次检查超时
      retries: 3                     # 重试次数
 
networks:
  1panel-network:
    external: true  # 使用 1Panel 外部网络,无需重新创建

3.2.1 进阶玩法(自定义网站标题和修改内容,容器目录映射到本地目录)

里面的内容XXX.COM改成自己的网站域名所在的目录

YAML
docker create --name tmp-libretv bestzwei/libretv:latest  #创建临时容器
docker cp tmp-libretv:/usr/share/nginx/html/. /opt/1panel/www/sites/XXXX.COM/data/html  #复制容器内文件到指定目录
docker rm tmp-libretv  #删除临时容器

#      XXX.COM改成自己的网站域名所在的目录
YAML
version: '3.8'

services:
  libretv:
    image: bestzwei/libretv:latest
    container_name: libretv
    networks:
      - 1panel-network
    ports:
      - "127.0.0.1:26678:80"
    environment:
      - PASSWORD=11111111
      - TZ=Asia/Shanghai
    volumes:
      # 静态文件映射为只读
      - /opt/1panel/www/sites/XXXX.COM/data/html:/usr/share/nginx/html:ro
      # (可选)自定义 Nginx 主配置
      #- /opt/1panel/www/sites/XXXX.COM/data/config/nginx.conf:/etc/nginx/nginx.conf:ro
      # 日志映射
      - /opt/1panel/www/sites/XXXX.COM/data/logs:/var/log/nginx
    restart: unless-stopped
    healthcheck:
      test: ["CMD-SHELL", "curl -f http://localhost:80 || exit 1"]
      interval: 30s
      timeout: 10s
      retries: 3

networks:
  1panel-network:
    external: true

3.3 以1panel商店应用模板来进行安装

以1panel V2为例,版本把修改好的模板放入 /opt/1panel/resource/apps/local 目录 然后刷新商店本地应用 搜索libretv 根据自己的配置安装即可。

模板链接:https://pan.quark.cn/s/2b8e64e0434a 提取码:Dhii

3.4 代码详解(中文注释)

  • version: '3.8':指定 Compose 文件格式版本,保证对 Swarm 和最新特性支持。
  • image: bestzwei/libretv:latest:拉取 LibreTV 官方最新镜像,免去手动构建。
  • container_name: libretv:容器名称设置为 libretv,便于在面板和命令行中识别。
  • ports:只将宿主机 127.0.0.1:26678 映射到容器端口 80,防止外网直接访问。
  • environment
    • PASSWORD:首次登录所需密码,可自行替换强密码。
    • TZ:设置为 Asia/Shanghai,保证日志与解析时间准确。
  • restartunless-stopped 策略,除非手动停止,否则异常退出会自动重启。
  • healthcheck:定时通过 curl 检测容器内 80 端口,确保服务正常。

3.5 开始拉取镜像并一键部署容器

  • 点击目录里面的终端然后输入docker compose up -d回车等待自动拉取镜像和部署容器

4. 访问与使用

  1. 在浏览器中访问 http://<服务器IP或者域名>。例如 http://name.com
  2. 输入在 docker-compose.yml 中配置的 PASSWORD,即可进入 LibreTV 界面。
  3. 在搜索框内输入影片或剧集名称,系统会自动检索并解析播放链接。
  4. 如需要配置HTTPS和SSL请使用1Panel面板自带的证书功能进行申请

5. 总结与后续更新

5.1 总结

通过本文示例,你已在 1Panel 面板中快速部署了 LibreTV,拥有了私有视频解析平台。后续可进一步:

  • 修改 Docker Compose,挂载自定义配置文件或缓存目录;
  • 在 1Panel 中添加 Nginx 反向代理并配置 SSL,实现 HTTPS 安全访问;
  • 配合动态域名或内网穿透工具,实现外网访问;
  • 扩展视频源、优化解析逻辑,提升观影体验。

5.2 后续更新

只需要再左侧菜单栏点击,容器,上方容器,选择你需要更新的容器,更多,升级,勾选强制拉取镜像,点击确定即可。