我现在有一台 vmware centos7 服务器。使用 yum 安装了 golang
并且在/etc/profiles 设置了 http_proxy 和 https_proxy 代理
/etc/profiles 设置的内容如下:
export http_proxy=http://192.168.230.1:808
export https_proxy=https://192.168.230.1:808
但是当我使用 go build xxx.go 的时,就会报错, go env 设置如下:
[root@localhost tz-monitor]# go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/root/.cache/go-build"
GOENV="/root/.config/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GOMODCACHE="/root/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/root/go"
GOPRIVATE=""
GOPROXY="https://goproxy.io,direct"
GOROOT="/usr/lib/golang"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/lib/golang/pkg/tool/linux_amd64"
GOVCS=""
GOVERSION="go1.19.10"
GCCGO="gccgo"
GOAMD64="v1"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/home/golang/tz-monitor/go.mod"
GOWORK=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build1417382532=/tmp/go-build -gno-record-gcc-switches"
使用 go build 时
[root@localhost tz-monitor]# go build main.go
go: downloading github.com/shirou/gopsutil/v3 v3.23.8
main.go:6:2: github.com/shirou/gopsutil/[email protected]: Get "https://goproxy.io/github.com/shirou/gopsutil/v3/@v/v3.23.8.zip": proxyconnect tcp: EOF
我看网上 go build 设置代理的意思好像是,访问国内的镜像,而非真正的代理。
我也尝试过,直接在有网的机器把v3.23.8.zip
传到这台没网的机器 然后使用 go build
。然而毫无卵用
老哥们 ,我这个怎么搞
1
timnottom 2023-09-28 14:39:20 +08:00
https://goproxy.cn/
使用如下命令添加模块代理: ``` go env -w GO111MODULE=on go env -w GOPROXY=https://goproxy.cn,direct ``` |
2
leegoo OP @timnottom
[root@localhost tz-monitor]# go env -w GO111MODULE=on [root@localhost tz-monitor]# go env -w GOPROXY=https://goproxy.cn,direct [root@localhost tz-monitor]# go build main.go go: downloading github.com/shirou/gopsutil/v3 v3.23.8 main.go:6:2: github.com/shirou/gopsutil/[email protected]: Get "https://goproxy.cn/github.com/shirou/gopsutil/v3/@v/v3.23.8.zip": proxyconnect tcp: EOF |
4
iSecret 2023-09-28 16:04:36 +08:00
先 unset http_proxy https_proxy 重置掉代理,然后使用 go env -w GOPROXY=https://goproxy.cn,direct 试试。
|
5
iSecret 2023-09-28 16:07:21 +08:00
另外你的 https_proxy 设置得有问题,不应该设置为 https 代理。
export http_proxy=http://192.168.230.1:808 export https_proxy=http://192.168.230.1:808 export all_proxy=socks5://192.168.230.1:808 |
6
iSecret 2023-09-28 16:12:11 +08:00 1
|
7
skiy 2023-09-28 16:12:13 +08:00
一定要用 http_proxy 吗?都用 goproxy 了。如果没必要,可以 http_proxy="" go build 看看?
|
8
learningman 2023-09-29 12:15:09 +08:00 via Android
没网就 go mod vendor 呗
|