Cobalt:十分钟用 Docker 自建视频下载站的完整指南
Cobalt十分钟用 Docker 自建视频下载站的完整指南【免费下载链接】cobaltbest way to save what you love项目地址: https://gitcode.com/GitHub_Trending/cob/cobaltCobalt 是一个开源、可自建的媒体下载器视频下载工具没有广告和跟踪代码。它帮经常需要保存 YouTube、TikTok 等平台视频和音频的人以及想给团队搭一个下载站的人省掉手动抓链接的麻烦。本文带你把它跑起来讲清核心用法、API 脚本化和常见报错处理。最短路径跑起来前提机器上装好 Docker 与 docker compose或者 Node.js 18 及以上版本仓库package.json声明node 18。官方推荐 Docker 方式下面按它走。克隆仓库获取示例配置仓库自带完整的 compose 样例git clone https://gitcode.com/GitHub_Trending/cob/cobalt克隆仓库样例文件在 docs/examples 目录下。建一个部署目录把 docs/examples/docker-compose.example.yml 的内容复制进去作为docker-compose.yml并把其中API_URL、WEB_URL改成你自己的地址。启动容器docker compose up -d后台启动 cobalt-api端口 9000和 cobalt-web端口 9001两个容器。如何判断成功浏览器打开http://localhost:9001/能出 cobalt 网页界面说明前端正常访问http://localhost:9000/api/serverInfo返回包含version字段的 JSON当前仓库版本为 7.15说明 API 正常。不走 Docker 也可以流程是git clone https://gitcode.com/GitHub_Trending/cob/cobalt cd cobalt npm run setup npm start依次是克隆仓库、进入目录、运行交互式配置脚本让你选 api 或 web 角色、填域名和端口并自动生成 .env 文件、自动安装依赖、启动服务。它能干什么一条链接保存 19 个平台的公开内容。README 的支持列表覆盖 YouTube、TikTok、Instagram、Twitter/X、Vimeo、Bilibili 等 19 个服务。比如把一条 TikTok 灵感视频存下来它支持无水印视频、幻灯片图片无水印还能取完整原始音频Reddit 的 GIF 和视频也能直接保存。服务视频音频仅音频仅视频youtube✅✅✅tiktok✅✅✅instagram✅✅✅twitter/x✅✅✅soundcloud➖✅➖摘自 README 支持列表完整 19 项见该文件。只抽音频。请求里带上isAudioOnly: true配合aFormat选 mp3、ogg、wav、opus 任一格式。想从 YouTube 音乐视频里留一份音频底稿这是最直接的办法仓库配置里音频输出固定 320k 码率。YouTube 的清晰度与编码精细控制。vQuality从 144 到 2160 可选vCodec支持 h264、av1、vp9README 注明支持 8K、4K、HDR、VR 和高帧率视频。自己存的 4K 素材可以按目标设备的兼容性指定编码而不是拿到一个默认的封装。文件名和元数据可选风格。filenamePattern提供 classic、pretty、basic、nerdy 四种命名方式下载的文件可携带标题、作者等元数据disableMetadata可关掉。素材库按标题命名比一串随机 ID 好整理得多。多媒体的帖子可以挑选。Instagram 和 Twitter/X 的多媒体帖子返回一个 picker选择器响应里带缩略图让你从同一个帖子里只保存想要的那几张图或那一段视频。进阶用法用脚本批量调用 API操作步骤对/api/json发 POST 请求请求体里必须有url字段curl -s -X POST http://localhost:9000/api/json \ -H Accept: application/json \ -H Content-Type: application/json \ -d {url:https://www.youtube.com/watch?vxxxx,isAudioOnly:true}让 cobalt 处理一条链接并返回处理结果。预期结果响应 JSON 中status为redirecturl字段是文件直链可直接用它落盘适合写循环脚本处理一整份链接清单。注意点两个Accept/Content-Type请求头一个都不能少默认限速是 60 秒内 20 次请求超了会收到rate-limit状态。用 cookies.json 解锁需要登录才能看的服务操作步骤在docker-compose.yml同目录建一个cookies.json格式照 docs/examples/cookies.example.json 填支持 instagram、twitter、reddit 等键然后在 compose 文件里取消COOKIE_PATH和对应 volume 挂载的注释重启容器。预期结果之前因登录墙取不到的公开内容如某些 Instagram 帖子可以正常解析下载。注意点项目明确声明只能下载免费、公开可访问的内容cookie 只是替实例过身份验证你对自己下载和分发的内容负责。调整环境变量匹配你的负载操作步骤在 compose 文件的environment段修改几个变量RATELIMIT_WINDOW限速窗口秒数默认 60、RATELIMIT_MAX窗口内最大请求数默认 20、DURATION_LIMIT允许的视频最大时长秒数默认 10800。预期结果限速和时长门槛贴合你的使用规模长视频或高频调用不再被拦。注意点完整变量表包括必填的API_URL、WEB_URL在 docs/run-an-instance.md实例要面向公网时官方建议加 nginx 这类反向代理。常见坑与排错启动后终端报 cobalt wasnt configured yet or configuration is invalid。说明.env不存在或配置无效。重新执行npm run setup按提示回答即可脚本会重建.env并装好依赖。Ubuntu 22.04 上跑 ffmpeg 相关下载失败DNS 解析不了。ffmpeg-static的二进制在这套系统上依赖 nscd 解析域名装好并启动它就能解决sudo apt install nscd sudo service nscd start安装并启动 nscd修复 ffmpeg 的动态库 DNS 解析问题。网页里点粘贴没反应旧版 Firefox。Firefox 125 起原生支持剪贴板粘贴旧版本要手动开地址栏进about:config搜dom.events.asyncClipboard.readText把 false 改成 true刷新页面即可。图文步骤见 docs/troubleshooting.md。调/api/json一直报格式错误。九成是漏了请求头或请求体。POST 必须带Accept: application/json和Content-Type: application/json两个头且请求体必须有url字段详见 docs/api.md。网页能打开但点下载就失败。通常是 web 容器的API_URL指错了地址。核对 compose 配置web 容器的API_URL要指向 api 服务的地址WEB_URL是 web 自己的地址两者都要带结尾的/。去哪找帮助部署与环境变量全集docs/run-an-instance.mdAPI 字段说明docs/api.md自排障指南进行中持续补充docs/troubleshooting.md想加新平台支持或提交功能先看 CONTRIBUTING.md 里的规范拿不准的改动建议先开 issue 讨论。Cobalt 的代码以 AGPL-3.0 许可发布媒体文件的转码和合并由 ffmpeg 完成。它只处理免费公开可访问的内容使用他人素材时记得保留原始创作者署名。【免费下载链接】cobaltbest way to save what you love项目地址: https://gitcode.com/GitHub_Trending/cob/cobalt创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

百度2012研发笔试题:拆解C++与算法核心考点

百度2012研发笔试题:拆解C++与算法核心考点

提起2012年的百度研发工程师笔试卷,很多老工程师应该还有印象。那会儿移动互联网刚起来,Android/iOS开发正热,搜索引擎还是百度最核心的业务,校招笔试的考察点和今天动不动就聊分布式、推荐系统、大模型面试题的路子很不一样。那时…

2026/10/26 11:11:23 阅读更多 →
curl 动态缓冲区加固复盘:释放之前,凭什么确定它初始化过?

curl 动态缓冲区加固复盘:释放之前,凭什么确定它初始化过?

curl 动态缓冲区加固复盘:释放之前,凭什么确定它初始化过? 【免费下载链接】curl A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS,…

2026/11/9 21:26:11 阅读更多 →
IMU-DVL组合导航系统:从工程代码到调试实战

IMU-DVL组合导航系统:从工程代码到调试实战

简介:本资源是一套面向水下导航领域的IMU-DVL组合导航系统工程实现,适用于自主水下航行器(AUV)、ROV等平台的高精度位置估计研发与教学实践,特别适合具备C语言基础和传感器融合知识的嵌入式开发者、导航算法工程师及研…

2026/10/26 11:11:27 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/10 23:32:01 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/10 23:32:03 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/11 2:31:33 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/10 16:14:15 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/10 12:51:50 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/10 23:32:10 阅读更多 →

日新闻

周新闻

月新闻