docker run -it -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.13.5-alpine
解决国内go1.13的go mod无法安装依赖的问题
最新的Go1.13中已经将go mod列为默认的包管理方法,但国内用户go mod vendor时还是有可能会出错,这是因为在go get时会检查哈希值,需要访问官方的sumdb。由于众所周知的不可抗因素,sumdb没法直接访问,这样就会造成下载依赖失败。解决的方法也很简单,只需要一行终端命令即可:
go env -w GOPROXY=https://goproxy.cn,direct
或者直接设置系统的环境变量
export GOPROXY=https://goproxy.cn,direct
准备源码
在/usr/src/myapp目录下新建一个myapp目录,里面放一个写好的main.go文件
go mod初始化go mod init myapp
查看GOPATH
编译二进制
go build -v
发现多了pkg文件夹,查看该文件夹,此时pkg/mod就是缓存的依赖。
这里go mod 的依赖文件都缓存在 $GOPATH/pkg/mod/下。