基于Go的高性能,多功能,可扩展的Github代理加速项目
GHProxy是一个基于Go的支持代理Github仓库资源和API的项目, 同时支持Docker镜像代理与脚本嵌套加速等多种功能
- ⚡ 基于 Go 语言实现,跨平台的同时提供高并发性能
- 🌐 使用自有Touka框架作为 HTTP服务端框架
- 📡 使用 Touka-HTTPC 作为 HTTP 客户端
- 📥 支持 Git clone、raw、releases 等文件拉取
- 🐳 支持反代Docker, GHCR等镜像仓库
- 🎨 支持多个前端主题
- 🚫 支持自定义黑名单/白名单
- 🗄️ 支持 Git Clone 缓存(配合 Smart-Git)
- 🐳 支持自托管与Docker容器化部署
- ⚡ 支持速率限制
- ⚡ 支持带宽速率限制
- 🔒 支持用户鉴权
- 🐚 支持 shell 脚本多层嵌套加速
GHProxy项目文档 感谢 @redbunnys的维护
# 下载文件
https://ghproxy.1888866.xyz/raw.githubusercontent.com/WJQSERVER-STUDIO/tools-stable/main/tools-stable-ghproxy.sh
https://ghproxy.1888866.xyz/https://raw.githubusercontent.com/WJQSERVER-STUDIO/tools-stable/main/tools-stable-ghproxy.sh
# 克隆仓库
git clone https://ghproxy.1888866.xyz/github.com/WJQSERVER-STUDIO/ghproxy.git
git clone https://ghproxy.1888866.xyz/https://github.com/WJQSERVER-STUDIO/ghproxy.git
# Docker(OCI) 代理
docker pull gh.example.com/wjqserver/ghproxy
docker pull gh.example.com/adguard/adguardhome
docker pull gh.example.com/docker.io/wjqserver/ghproxy
docker pull gh.example.com/docker.io/adguard/adguardhome
docker pull gh.example.com/ghcr.io/openfaas/queue-worker 可参考文章: https://blog.wjqserver.com/post/ghproxy-deploy-with-smart-git/
- Docker-cli
docker run -p 7210:8080 -v ./ghproxy/log/run:/data/ghproxy/log -v ./ghproxy/log/caddy:/data/caddy/log -v ./ghproxy/config:/data/ghproxy/config --restart always wjqserver/ghproxy
Docker-Compose (建议使用)
一键部署脚本:
wget -O install.sh https://raw.githubusercontent.com/WJQSERVER-STUDIO/ghproxy/main/deploy/install.sh && chmod +x install.sh &&./install.shDev一键部署脚本:
wget -O install-dev.sh https://raw.githubusercontent.com/WJQSERVER-STUDIO/ghproxy/dev/deploy/install-dev.sh && chmod +x install-dev.sh && ./install-dev.sh参看项目文档
本项目旨在于构建一个高效且功能多样的GHProxy
- v4.0.0 迁移到Touka框架
- v3.0.0 迁移到HertZ框架, 进一步提升效率
- v2.4.1 对路径匹配进行优化
- v2.0.0 对
proxy核心模块进行了重构,大幅优化内存占用 - v1.0.0 迁移至本仓库,并再次重构内容实现
- v0.2.0 重构项目实现
评论
发表评论