GOINSECURE在Github的包上启用http下载



我正在工作中开发一个CLI应用程序,以便自动化一些乏味的任务,为此,我需要安装几个像gotp这样的软件包。我注意到,在我的项目中安装这个新包时,会弹出这个错误。

go get github.com/xlzd/gotp
go: module github.com/xlzd/gotp: Get "https://proxy.golang.org/github.com/xlzd/gotp/@v/list": x509: certificate signed by unknown authority

我想这与我工作电脑的防火墙或安全配置有关,因为在电脑上启用防火墙之前,我已经安装了几个软件包。我读到了环境变量GOINSECURE,它将使go get能够通过HTTP下载软件包。以下是我在我的案例中所做的。

export GOINSECURE="proxy.golang.org/*,github.com,github.com/*"

仍然会弹出相同的错误,我的配置中是否遗漏了什么?

当我安装内部包时,我也遇到了这个错误,解决方案选择了正确的代理,我将GOPROXY更改为内部代理站点地址,并将GOPRIVATEgonoporoxyGONOSUMDB设置为空值。在您的情况下,您可以尝试

GOINSECURE="proxy.golang.org/*,github.com,github.com/*"
GONOSUMDB="proxy.golang.org/*,github.com,github.com/*"
GOPRIVATE="proxy.golang.org/*,github.com,github.com/*"

当我试图在一个ubuntu22容器中的bash shell中使用go时,我遇到了这个问题,该容器在公司网络上的windows docker桌面中运行。

我想做

go get github.com/Masterminds/sprig

但不断得到x509错误

go get github.com/Masterminds/sprig
go: github.com/Masterminds/goutils@v1.1.1: Get "https://proxy.golang.org/github.com/%21masterminds/goutils/@v/v1.1.1.mod": x509: certificate signed by unknown authority
  1. go get --insecure确实被弃用,不再适用于

  2. export GOINSECURE=github.com在第一次时不起作用

  3. 它似乎更像是GOINSECURE与的结合

    git config --global http.sslverify false

我把这个sslVerify设置为false,它变得更进一步了。。

所以我一直在迭代go get github.com/Masterminds/sprig,每次它都会进一步。。调用另一个url(可能是包依赖项(

go get github.com/Masterminds/sprig
go: golang.org/x/crypto@v0.0.0-20211108221036-ceb1ce70b4fa: unrecognized import path "golang.org/x/crypto": https fetch: Get "https://golang.org/x/cr
ypto?go-get=1": x509: certificate signed by unknown authority

每次我将url添加到GOINSECURE,即

export GOINSECURE=github.com,golang.org
go get github.com/Masterminds/sprig
go: sigs.k8s.io/yaml@v1.2.0: unrecognized import path "sigs.k8s.io/yaml": https fetch: Get "https://sigs.k8s.io/yaml?go-get=1": x509: certificate sig
ned by unknown authority
export GOINSECURE=github.com,golang.org,sigs.k8s.io

直到最后所有东西都下载了

go get github.com/Masterminds/sprig
go: downloading github.com/Masterminds/sprig v2.22.0+incompatible
go: downloading github.com/Masterminds/goutils v1.1.1
go: downloading github.com/Masterminds/semver v1.5.0
go: downloading github.com/google/uuid v1.3.0
go: downloading github.com/huandu/xstrings v1.3.2
go: downloading github.com/imdario/mergo v0.3.12
go: downloading github.com/mitchellh/copystructure v1.2.0
go: downloading golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa
go: downloading github.com/mitchellh/reflectwalk v1.0.2
""/bin/go build prehelm.go
go: downloading sigs.k8s.io/yaml v1.2.0
go: downloading gopkg.in/yaml.v2 v2.3.0

我希望这有帮助,简而言之

  1. 确保您拥有git config --global http.sslverify false
  2. 将站点添加到你的GOINSECURE=一个接一个直到完成
  3. 或者,但不太安全,您可以添加export GOINSECURE=*

相关内容

  • 没有找到相关文章

最新更新