最新的 1.12,1.11都开始支持 go modules了, GOPROXY 还是很好用的,再也不用担心有包下载不下来了。
启用 go modules
set GO111MODULE=on //windows
export GO111MODULE=on //linux
- 点击下面这个按钮(或者先fork再点,这样可以自己修改部署脚本)
用 goproxy 在 heroku 自建 go modules 代理。
App name 是一个唯一的 app名字
Choose a region 有美国和欧洲可以选。个人认为美国的速度还不错。会在region里随机分配一个节点给你,有的节点很快,有的比较慢。不过还是会比 goproxy.io 之类的快并且稳定。
点 Create app ,等一会就部署完成了。
- 现在你就可以使用你自建的 go modules 代理了。
linux:
export GOPROXY=https://youappname.herokuapp.com
windows:
$env:GOPROXY = "https://youappname.herokuapp.com"
or
set GOPROXY="https://youappname.herokuapp.com"
- Now, when you build and run your applications, go will fetch dependencies via
https://youappname.herokuapp.com
.
Note: This proxy can't fetch your private repos of course.
youappname
是你Crate New App 时的 App name
- 直接打开你申请的链接应该是显示空白。
可以用这个链接测试一下: https://youappname.herokuapp.com/github.com/nsqio/nsq/@v/list
-
heroku 部署的 app,在一段时间内(半个小时)没有流量会被冻结。然后有人访问的时候就才会再次启动。(所以第一次打开会比较慢,启动好了就快了)
-
提供一个懒人用测试地址,多人用不能保证速度,而且每个月是有限额的(一个人单独用完全足够)。所以还是建议自己 fork 自己建立一个 app。 https://goproxyus.herokuapp.com
- 可以用这个代理下载仓库
-
https://goproxyus.herokuapp.com/github.com/whtiehack/goproxy/@latest
-
latest 有个问题,不会再次去拿最新代码,因为有缓存。(应用冻结以后再次访问来重启,缓存就会消失)
或者你知道明确版本的放可以构造url直接下载 : https://goproxyus.herokuapp.com/github.com/node-pinus/pinus/@v/v1.3.10.zip
- 被缓存下来的数据可以打开 https://goproxyus.herokuapp.com 直接浏览并下载。