github地址:WJQSERVER-STUDIO/ghproxy: Github项目文件下载加速
项目介绍
使用Go实现的GHProxy,用于加速部分地区Github仓库的拉取,支持速率限制,用户鉴权,支持Docker部署
项目特点
- 基于Go语言实现,使用Gin框架与req库]
- 支持Git clone,raw,realeases等文件拉取
- 支持Docker部署
- 支持速率限制
- 支持用户鉴权
- 支持自定义黑名单/白名单
- 符合RFC 7234的HTTP Cache
- 使用Caddy作为Web Server
- 基于WJQSERVER-STUDIO/golang-temp模板构建,具有标准化的日志记录与构建流程
前端界面
使用示例
# 拉取 raw 文件 https://ghproxy.1888866.xyz/raw.githubusercontent.com/WJQSERVER-STUDIO/tools-stable/main/tools-stable-ghproxy.sh # 克隆 Git 仓库 git clone https://ghproxy.1888866.xyz/github.com/WJQSERVER-STUDIO/ghproxy.git
部署教程
在自定义目录创建docker-compose.yml
文件后,执行docker compose up -d
命令即可
docker run -d \ --name ghproxy \ --restart always \ -v ./ghproxy/log/run:/data/ghproxy/log \ -v ./ghproxy/log/caddy:/data/caddy/log \ -v ./ghproxy/config:/data/ghproxy/config \ -p 7210:80 \ wjqserver/ghproxy:latest
注意事项
本项目采用config.toml
作为外部配置,默认配置如下 使用Docker部署时,慎重修改config.toml
,以免造成不必要的麻烦
[server] host = "127.0.0.1" # 监听地址(小白请勿修改) port = 8080 #监听端口(小白请勿修改) sizelimit = 131072000 # 125MB [log] logfilepath = "/data/ghproxy/log/ghproxy.log" # 日志文件路径(小白请勿修改) maxlogsize = 5 # MB [cors] enabled = true # 是否开启CORS [auth] authtoken = "test" # 鉴权Token enabled = false # 是否开启鉴权 [blacklist] blacklistfile = "/data/ghproxy/config/blacklist.json" # 黑名单文件路径 enabled = false # 是否开启黑名单 [whitelist] enabled = false # 是否开启白名单 whitelistfile = "/data/ghproxy/config/whitelist.json" # 白名单文件路径
其他配置说明详见github页面
发布者:木木,转载请注明出处:https://blog.mmcool.site/5601.html