一个单二进制文件实现多种docker镜像仓库加速,github文件加速,离线镜像下载,镜像搜索等等,所有加速都在一个入口。
在之前的抄袭风波后,我决定大幅重构项目,现在增加了更多功能,和性能优化。
演示站:demo.52013120.xyz (小口子低配置机器,大家轻点用,欢迎大家帮我测试BUG)
项目地址:https://github.com/sky22333/hubproxy
✨ 特性
- 🐳 Docker 镜像加速 - 一个单域名实现 Docker Hub、GHCR、Quay 等多个镜像仓库加速,流式传输优化拉取速度。符合
Docker Registry API v2
标准。部分组件复用了谷歌的实现,后续有空再研究下如何优雅的实现代理推送。 - 🐳 下载离线镜像包 - 支持下载离线镜像包,流式传输加防抖设计。也是复用了go-containerregistry的组件,创新点在于完全流式传输,点击即可立马下载离线包到本地,没有服务端拉取和打包的步骤。方便离线使用场景。
- 📁 GitHub 文件加速 - 加速 GitHub Release、Raw 文件下载,支持
api.github.com
,嵌套加速等等 - 🤖 AI 模型库支持 - 支持 Hugging Face 模型下载加速
- 🛡️ 智能限流 - IP 限流保护,防止滥用,支持基于IP的黑名单,白名单。
- 🚫 仓库审计 - 强大的自定义黑名单,白名单,同时审计镜像仓库,和GitHub仓库
- 🔍 镜像搜索 - 在线搜索 Docker 官方仓库的各种镜像信息
- ⚡ 轻量高效 - 基于 Go 语言,单二进制文件运行,资源占用低,具有内存清理机制。
- 🔧 配置热重载 - 统一配置管理,部分配置项支持热重载,无需重启服务
# 原命令
docker pull nginx
# 使用加速
docker pull demo.52013120.xyz/nginx
# ghcr加速
docker pull demo.52013120.xyz/ghcr.io/sky22333/hubproxy
# 符合Docker Registry API v2标准的仓库都支持
🚀 快速开始
Docker部署(推荐)
docker run -d \
--name hubproxy \
-p 5000:5000 \
--restart always \
ghcr.io/sky22333/hubproxy
二进制部署
- 支持一键脚本,可查看仓库
- 可直接下载二进制文件执行
./hubproxy
使用,无需配置文件即可启动,内置默认配置,支持所有功能。初始内存占用约18M
,二进制文件大小约12M
评论区