搭建私有goproxy

作者: 拿铁味的摩卡蛋糕 | 来源:发表于2019-10-14 10:24 被阅读0次

搭建私有goproxy

由于众所周知的原因,在大陆的网络环境是无法访问到golang.org等google的网站的。但在开发日常中使用的很多依赖包或系统包依赖都是在google的服务器上。为了解决无法加载依赖的问题,国内也有很多种解决方案。一种是使用goproxy.io或七牛主导的goproxy.cn。
在企业里,有很多情况是生产网络或测试网络环境是无法正常访问外网的,为了解决这个问题可能需要自己搭建一个proxy来管理依赖包。

搭建goprxoy

找一台可以访问外网的服务器。
下载goproxy源码:

$ go get github.com/goproxy/goproxy
$ vim main.go

增加main.go文件:

package main
import (
    "net/http"
    "github.com/goproxy/goproxy"
)
func main() {
    http.ListenAndServe(":8080", goproxy.New())
}

在本机执行:

$ export GOPROXY=https://127.0.0.0:8080
$ GO111MODULE=on go build

进入/opt/data目录可以看到拉取的依赖包缓存。

使用goproxy.cn

# Air
[air]
app_name = "goproxy-china"
debug_mode = true
address = "0.0.0.0:8080"
minifier_enabled = true
gzip_enabled = true
coffer_enabled = true
i18n_enabled = true
# Zerolog
[zerolog]
logger_level = "debug"
# Qiniu Cloud Kodo
[kodo]
endpoint = "s3-cn-north-1.qiniucs.com"
access_key = "<ACCESS_KEY>" # qiniu access_key
secret_key = "<SECRET_KEY>" # qiniu secret_key
bucket_name = "go-proxy"
bucket_endpoint = "go-proxy.s3-cn-north-1.qiniucs.com"
# Goproxy
[goproxy]
go_bin_name = "go"
local_cache_root = "/opt/data"

设置好配置文件后,直接启动就好了:

$ go build
$ ./goproxy.cn

在开普勒云上部署goproxy

首先依然是在github上创建一个project,名叫go-proxy,然后增加一个Dockerfile文件:

FROM goproxy/goproxy:latest
CMD ["/goproxy", "-listen=0.0.0.0:8080", "-cacheDir=/opt/data", "-proxy", "https://goproxy.io", "-exclude", "*.nsini.com"]

创建一个用

挂载持久化存储

测试

首先将GOPROXY环境变量设置为刚刚生成的地址:goproxy.app.nsini.com,然后执行构建:

$ export GOPROXY=https://goproxy.app.nsini.com
$ GO111MODULE=on go build

尾巴

相关文章

  • 搭建私有goproxy

    搭建私有goproxy 由于众所周知的原因,在大陆的网络环境是无法访问到golang.org等google的网站的...

  • go proxy 设置

    在Go 1.13中,我们可以通过GOPROXY来控制代理 注意 : 通过 GOPRIVATE 控制私有库不走代理 ...

  • 知识分享之Golang——go mod时使用代理模式goprox

    知识分享之Golang——go mod时使用代理模式goproxy和私有模式GOPRIVATE 背景 知识分享之G...

  • Go 1.13设置代理

    在Go 1.13中,我们可以通过GOPROXY来控制代理,以及通过GOPRIVATE控制私有库不走代理。 设置GO...

  • 私有npm服务器搭建

    私有npm服务器搭建 标签(空格分隔): Node.js 私有npm服务器搭建 本次搭建是在ubuntu环境下搭建...

  • 搭建私有npm服务器教程

    私有npm服务器搭建 标签(空格分隔): Node.js 私有npm服务器搭建 本次搭建是在ubuntu环境下搭建...

  • go代理设置

    在Go 1.13版本中,我们可以通过GOPROXY来控制代理,以及通过GOPRIVATE控制私有库不走代理。 设置...

  • maven备忘

    1. 搭建私有库 使用docker搭建私有maven库,docker image为sonatype/nexus3 ...

  • 解决Golang 无法下载依赖包

    修改GOPROXY go env -w GOPROXY=https://goproxy.cn

  • 私有npm库搭建 & Vue npm组件发布

    一、私有库搭建 本文私有库在linux中使用docker搭建 拉最新镜像docker pull verdaccio...

网友评论

    本文标题:搭建私有goproxy

    本文链接:https://www.haomeiwen.com/subject/rmbivxtx.html