MediaGo Docker部署完全指南:一行命令搭建视频下载服务器
2026/9/2 14:41:28 网站建设 项目流程

MediaGo Docker部署完全指南:一行命令搭建视频下载服务器

【免费下载链接】mediago跨平台视频提取工具:支持流媒体下载、视频下载、m3u8 下载及 B站视频下载,提供 Windows 和 Mac 桌面客户端。Cross-platform video extraction tool: Supports streaming download, video download, m3u8 download, and Bilibili video download, with desktop clients for Windows and Mac.项目地址: https://gitcode.com/caorushizi/mediago

MediaGo 是一款跨平台视频提取工具,支持流媒体下载、m3u8 下载、B站视频下载,并提供 Windows 和 Mac 桌面客户端。本文带你完成MediaGo Docker 部署:在服务器或 NAS 上运行一个视频下载服务,然后用手机、浏览器随时随地访问 Web 控制台。

为什么选择 Docker 部署视频下载服务器?

传统安装需要配置运行环境、下载各种依赖工具,而 MediaGo 的 Docker 镜像把这些全部打包好了:

  • 📦开箱即用:镜像内置 yt-dlp、BBDown、N_m3u8DL 等下载引擎,无需手动安装
  • 🖥️Web 控制台:部署后直接通过浏览器管理下载任务,无需守在电脑前
  • 📱多端访问:手机、平板、电脑都能访问同一台下载服务器
  • 🔄持久化存储:数据、日志、下载文件都挂载在本地目录,容器删了数据还在
  • 🏗️多架构支持:同时提供 Intel/AMD(amd64)和 ARM(arm64)镜像,NAS 用户也能跑

前提条件

开始MediaGo Docker 部署前,只需确认两件事:

  1. 服务器已安装 Docker(docker --version能正常输出版本号)
  2. 服务器 8899 端口未被占用

一行命令部署 MediaGo

打开终端,执行下面这条命令即可:

docker run -d --name mediago -p 8899:8899 -v /path/to/mediago:/app/mediago caorushizi/mediago:3.5.0

各参数含义如下:

参数说明
-d后台运行容器
--name mediago给容器起名,方便后续管理
-p 8899:8899把容器内 8899 端口映射到服务器 8899 端口
-v /path/to/mediago:/app/mediago挂载本地目录,保存数据、日志和下载文件
caorushizi/mediago:3.5.0镜像名与版本标签

💡 把/path/to/mediago替换成服务器上实际使用的目录,例如/opt/mediago

镜像也可以从 GHCR 拉取:ghcr.io/caorushizi/mediago:3.5.0,哪个镜像源快选哪个。

访问 MediaGo 控制台

容器启动后,在浏览器地址栏输入:

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

即可看到 MediaGo 的 Web 控制台。容器启动时默认开启了认证(见镜像入口脚本 docker/docker-entrypoint.sh 中的--enable-auth参数),首次进入后在设置页面中可以获取 API Key,后续通过接口调用时需要带上Authorization: Bearer <key>请求头,详细说明见 docs/api.md。

进入控制台后,点击「新建下载」,填入 m3u8 链接或 B站链接就能开始下载:

可选:使用 Docker Compose 部署

如果你习惯用 Compose 管理容器,仓库根目录提供了现成的编排文件 docker-compose.yml,其中配置了端口映射、数据卷和restart: unless-stopped自动重启策略。克隆仓库后执行:

git clone https://gitcode.com/caorushizi/mediago cd mediago docker compose up -d

进阶:了解镜像是如何构建的

想了解技术细节的话,可以从仓库根目录的 Dockerfile 入手,它采用三阶段构建:

  1. Node 构建阶段:编译前端 Web 界面和播放器界面,并下载第三方下载工具
  2. Go 构建阶段:交叉编译mediago-core核心服务(CGO 关闭,静态二进制)
  3. 运行阶段:基于 debian-slim 的轻量运行环境,仅保留核心二进制和依赖工具

容器启动参数由入口脚本 docker/docker-entrypoint.sh 统一管理,你甚至可以在docker run末尾追加参数覆盖默认配置(如修改--port),而无需重新构建镜像。

宝塔面板一键部署(新手推荐)

如果你使用宝塔面板,可以完全跳过命令行,在 Docker 应用商店里一键安装 MediaGo,完整流程见 docs/bt-install.md:

  1. 登录宝塔面板,点击左侧菜单的「Docker」

  1. 首次会提示安装 Docker 和 Docker Compose 服务,点击立即安装

  1. 在「应用商店」中找到 MediaGo,点击安装,默认端口为 8899

提交后等待 1–3 分钟初始化完成,访问http://<服务器IP>:8899即可。

常用容器管理命令

部署完成后,这几个命令建议收藏:

# 查看运行日志 docker logs -f mediago # 停止容器 docker stop mediago # 启动已停止的容器 docker start mediago # 查看容器内下载文件位置 docker exec -it mediago ls /app/mediago/downloads

升级版本时,只需重新拉取新版本镜像并重建容器(挂载目录中的数据不会丢失):

docker stop mediago && docker rm mediago docker run -d --name mediago -p 8899:8899 -v /path/to/mediago:/app/mediago caorushizi/mediago:3.5.0

常见问题 FAQ

Q1:端口 8899 被占用了怎么办?修改端口映射即可,例如-p 9899:8899,然后访问http://<服务器IP>:9899

Q2:下载的视频文件存在哪里?默认在容器的/app/mediago/downloads目录,对应你挂载的本地目录下的downloads子目录,可直接用 NAS 文件管理或 FTP 访问。

Q3:ARM 架构(如 ARM NAS)能部署吗?可以,镜像同时提供了 arm64 版本,Docker 会自动选择匹配的架构。

Q4:数据会随容器删除丢失吗?只要使用了-v挂载目录,数据库(mediago.db)、日志、下载文件都保存在你的本地目录中,删除容器不影响数据。

总结

MediaGo Docker 部署非常简单:一条docker run命令,一分钟就能拥有一台 7×24 小时在线的视频下载服务器,支持 m3u8 下载、B站视频下载和流媒体解析,手机浏览器随时管理。更多使用技巧可以参考 docs/guides.md。

⚠️ 提示:本工具仅可用于学习与研究目的,请遵守当地法律法规,不要用于任何商业用途。

【免费下载链接】mediago跨平台视频提取工具:支持流媒体下载、视频下载、m3u8 下载及 B站视频下载,提供 Windows 和 Mac 桌面客户端。Cross-platform video extraction tool: Supports streaming download, video download, m3u8 download, and Bilibili video download, with desktop clients for Windows and Mac.项目地址: https://gitcode.com/caorushizi/mediago

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询