是否有任何缓存代理可用于 Golang 依赖项,因为它是现有的,例如对于 NPM(NodeJS)?

Is there any caching Proxy available for Golang Dependencies as it is existing e.g. for NPM (NodesJS)?

对于 NodeJS,我可以使用内部 Nexus 服务器作为中央存储库。 此服务器还可以作为代理工作,因此如果包在本地未知,它将转到 registry.npmjs.com 或配置的任何内容并从那里加载包。

然后这个包将与所有相关的元信息(如版本等)一起存储在 Nexus 中。有了它,我们始终可以构建,即使所有者删除 public 存储库或新版本有重大更改. 此外,我们可以进行审查,并且只允许审查主要包等。

Go 是否有相同的东西可用?

我发现一些项目试图通过充当依赖项的中央存储和代理来解决上述问题。

最有前途的是 Athens 项目和 Artifactory 5.11。

Project Athens 可以使用 go dep

Artifactory 5.11 需要 jfrog cli 而不是 go dep