# 五，nexus3搭建golang私服

> 在之前的文章中提到使用`Athens`搭建`golang`私服，但`Athens`私服无管理界面，而`nexus3`集成了`go,maven,docker`等资源的私服功能

搭建`nexus3`私服的方法在之前的文章中提过，可参考<https://www.jianshu.com/p/62483b0505a5>

#### 新建`type`为`proxy`的`go repository`

image.png\
&#x20;`Remote storage`地址填写镜像站的地址，比较不错的地址有`https://mirrors.aliyun.com/goproxy/`、`https://goproxy.io`、`https://athens.azurefd.net`，`proxy`版`golang repository`可建立多个。

![](https://upload-images.jianshu.io/upload_images/3804491-541f04199884fc1e.png?imageMogr2/auto-orient/strip|imageView2/2/w/1033/format/webp)

#### 新建`type`为`group`的`go repository`

image.png

![](https://upload-images.jianshu.io/upload_images/3804491-826adec652de4596.png?imageMogr2/auto-orient/strip|imageView2/2/w/1068/format/webp)

`group`版的`golang repository`可以从`proxy go repository`下载依赖并缓存到本地，将左侧`Avaliable`中可用的`repository`加入到右侧的`Menbers`中，这样就可以从`http://192.168.31.230:8081/repository/go-proxy/`中直接下载依赖，`nexus`会自动帮我们从`proxy go repository`中下载依赖。

#### 设置`golang`代理

完成上诉步骤之后，还需要设置环境变量启用`golang`的代理功能，不同操作系统的设置方式可自行修改，将变量`GO111MODULE`设置为`on`，`GOPROXY`设置为私服的地`http://192.168.31.230:8081/repository/go-proxy/`，若是遇到`401 Unauthorized`的问题，应该是需要进行`nexus3`的用户验证，可以直接在代理地址中加入用户名密码，例如`http://username:password@192.168.31.230:8081/repository/go-proxy/`。\
&#x20;若是不想自行搭建私服，也可使用一些现成的镜像站`https://goproxy.io`、`https://athens.azurefd.net`、或者国内阿里云的`https://mirrors.aliyun.com/goproxy/`，只要将环境变量`GOPROXY`修改成相应地址即可\
\
作者：褪色的记忆1994\
链接：<https://www.jianshu.com/p/cdad7d4639e3\\>
来源：简书\
著作权归作者所有。商业转载请联系作者获得授权，非商业转载请注明出处。
