Bruce Blog Bruce Blog
首页
  • CentOS
  • Ubuntu-Debian
  • 系统网络
  • 系统辅助工具
  • MySQL
  • Redis
  • Mongodb
  • Docker基础
  • Container基础
  • Kubernetes

    • Kubernetes基础
    • Kubernetes辅助
  • Container-Network
  • Jenkins
  • Gitlab
  • ArgoCD
  • Ansible
  • Terraform
  • AWS
  • MQ
  • NGINX
  • JumpServer
  • 基础
  • 函数模块
  • 框架
  • 基础

    • Golang环境
    • 语法
    • 数据类型与运算符
    • 分支语句
    • 循环语句
    • 数组
    • 切片
    • Map
    • String
    • 函数
    • 包的管理
    • 指针
    • 结构体
    • Go语言中的OOP
    • 方法和接口
    • 错误处理
  • Go进阶

    • Go进阶
  • Go框架

    • Go框架
  • Golang辅助

    • Golang辅助
  • CSS
  • HTML
  • JavaScript
  • 前端辅助
  • 常用命令
  • 性能监控工具
  • Windows下Docker使用
  • 日常学习
  • 其他导航

Bruce Tao

运维界的该溜子
首页
  • CentOS
  • Ubuntu-Debian
  • 系统网络
  • 系统辅助工具
  • MySQL
  • Redis
  • Mongodb
  • Docker基础
  • Container基础
  • Kubernetes

    • Kubernetes基础
    • Kubernetes辅助
  • Container-Network
  • Jenkins
  • Gitlab
  • ArgoCD
  • Ansible
  • Terraform
  • AWS
  • MQ
  • NGINX
  • JumpServer
  • 基础
  • 函数模块
  • 框架
  • 基础

    • Golang环境
    • 语法
    • 数据类型与运算符
    • 分支语句
    • 循环语句
    • 数组
    • 切片
    • Map
    • String
    • 函数
    • 包的管理
    • 指针
    • 结构体
    • Go语言中的OOP
    • 方法和接口
    • 错误处理
  • Go进阶

    • Go进阶
  • Go框架

    • Go框架
  • Golang辅助

    • Golang辅助
  • CSS
  • HTML
  • JavaScript
  • 前端辅助
  • 常用命令
  • 性能监控工具
  • Windows下Docker使用
  • 日常学习
  • 其他导航
  • 基础

  • Go进阶

  • Go框架

  • Golang辅助

    • Golang环境配置

      • Golang环境配置日常记录
      • Go 语言多版本管理利器 GVM
      • Go mod代理配置
    • GolangIDE

  • Golang
  • Golang辅助
  • Golang环境配置
Bruce
2022-09-12

Go mod代理配置

在Go 1.13中,可以通过GOPROXY来控制代理,以及通过GOPRIVATE控制私有库不走代理.

# 设置GOPROXY代理
$ go env -w GOPROXY=https://goproxy.cn,direct

# 设置GOPRIVATE跳过私有库(常用的Gitlab或Gitee,中间使用逗号分隔)
$ go env -w GOPRIVATE=*.gitlab.com,*.gitee.com
1
2
3
4
5
  • 如果在运行go mod vendor时,提示 Get https://sum.golang.org/lookup/xxxxxx: dial tcp 216.58.200.49:443: i/o timeout,则是因为Go1.13设置了默认的 GOSUMDB=sum.golang.org,这个网站是被墙了的,用于验证包的有效性,可以通过如下命令关闭:
# 关闭`GOSUMDB`
$ go env -w GOSUMDB=off

# 也可以设置 `GOSUMDB="sum.golang.google.cn"`,这个是专门为国内提供的sum验证服务.
$ go env -w GOSUMDB="sum.golang.google.cn"
1
2
3
4
5
  • go env -w GOPROXY=*** 设置GOPROXY报如下错误:
warning: go env -w GOPROXY=... does not override conflicting OS environment variable
1

原因: 用环境变量的方式设置过代理地址,go13提供了 -w 参数来设置GOPROXY变量,但无法覆盖OS级别的环境变量

解决方法:

$ set GOPROXY=
$ go env -w GOPROXY=https://goproxy.cn,direct

# 或
$ set GOPROXY=https://goproxy.cn,direct

# 永久设置环境变量
$ setx GOPROXY "https://goproxy.cn,direct"
1
2
3
4
5
6
7
8

如果使用goland开发,先去 File>Settings>Go>Go Modules(vgo)>Enable Go Modules (vgo) integration取消勾选,它会导致 go env -w 出错.或勾选后直接在 Proxy 里配置代理.

上次更新: 2024/04/09, 16:48:42
Go 语言多版本管理利器 GVM
GolangIDE配置日常记录

← Go 语言多版本管理利器 GVM GolangIDE配置日常记录→

最近更新
01
AWS NAT-NetWork-Firwalld配置(一)
04-09
02
AWS NAT-NetWork-Firwalld配置(二)
04-09
03
kubernetes部署minio对象存储
01-18
更多文章>
Theme by Vdoing | Copyright © 2019-2024 Bruce Tao Blog Space | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式