一、搭建远程开发环境

sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.16.5.linux-amd64.tar.gz

vim ~/.bashrc

export PATH=$PATH:/usr/local/go/bin

sourch ~/.bashrc

cat >> /etc/profile.d/go.sh <<EOF if [[ -z “${GOROOT}” ]]; then export GOROOT=/usr/local/go export GOPATH=/root/gopath # 需要修改,目录提前创建 export PATH=${PATH}:${GOROOT}/bin export GO111MODULE=on export GOPROXY=https://goproxy.cn,direct export GOSUMDB=off fi EOF

source /etc/profile.d/go.sh

  1. <a name="6imuD"></a>
  2. ###
  3. <a name="DTcLt"></a>
  4. ### 2、新建远程服务器
  5. - 安装插件`Remote - SSH`完成后,在vscode左侧的状态栏会出现一个显示器图标,里面就是远程主机,点击,然后点击齿轮,最后打开显示的输入框下的 `.ssh\config` 文件。
  6. ![image.png](https://cdn.nlark.com/yuque/0/2021/png/2788129/1624789925794-64e84635-97cf-4d4d-a148-66d606131858.png#height=338&id=dP3PO&margin=%5Bobject%20Object%5D&name=image.png&originHeight=338&originWidth=312&originalType=binary&ratio=1&size=15267&status=done&style=none&width=312)
  7. - 输入主机备注、IP、登录用户名
  8. ![image.png](https://cdn.nlark.com/yuque/0/2021/png/2788129/1624789943263-893b7714-0ddb-49f4-963b-8350fad26937.png#height=172&id=JZfvk&margin=%5Bobject%20Object%5D&name=image.png&originHeight=172&originWidth=1188&originalType=binary&ratio=1&size=22180&status=done&style=none&width=1188)
  9. - 右键选择第一个
  10. ![image.png](https://cdn.nlark.com/yuque/0/2021/png/2788129/1624790019108-36ee44bb-9d3d-4421-843f-f629fde49847.png#height=167&id=IaXnr&margin=%5Bobject%20Object%5D&name=image.png&originHeight=167&originWidth=379&originalType=binary&ratio=1&size=10730&status=done&style=none&width=379)<br />![image.png](https://cdn.nlark.com/yuque/0/2021/png/2788129/1624790037840-571b80f3-4bc8-4a18-9b0a-80ed3c4e4d23.png#height=123&id=m1jBx&margin=%5Bobject%20Object%5D&name=image.png&originHeight=123&originWidth=680&originalType=binary&ratio=1&size=7571&status=done&style=none&width=680)<br />![image.png](https://cdn.nlark.com/yuque/0/2021/png/2788129/1624790055834-d51cb06a-94a1-414a-bf2b-617f9ca212da.png#height=154&id=wzmkp&margin=%5Bobject%20Object%5D&name=image.png&originHeight=154&originWidth=658&originalType=binary&ratio=1&size=11591&status=done&style=none&width=658)<br />![image.png](https://cdn.nlark.com/yuque/0/2021/png/2788129/1624790090967-15adc66f-6682-41ef-bc37-4014ea6848ad.png#height=165&id=I7TtJ&margin=%5Bobject%20Object%5D&name=image.png&originHeight=165&originWidth=668&originalType=binary&ratio=1&size=10925&status=done&style=none&width=668)
  11. <a name="6pbbQ"></a>
  12. ### 3、设置免密登录
  13. - 如果之前给PC机配置过github的,那么在你PC机上的.ssh文件下有着一份 `id_rsa.pub`文件,(之前没配置过的话,打开pc命令行,输入`ssh-keygen -t rsa`即可,一直回车就可以创建),打开它,复制里面的内容,拷贝到远程机器的根目录的.ssh文件下的`authorized_keys`文件内(没有的话新建一个就可以了)。最后重启vscode。
  14. ![image.png](https://cdn.nlark.com/yuque/0/2021/png/2788129/1624790244165-021a619c-6385-4ad5-a245-3876c5830450.png#height=141&id=KA9Gs&margin=%5Bobject%20Object%5D&name=image.png&originHeight=141&originWidth=382&originalType=binary&ratio=1&size=5962&status=done&style=none&width=382)<br />![image.png](https://cdn.nlark.com/yuque/0/2021/png/2788129/1624790282359-0fb3182f-a29a-45ef-a175-dc35b818b00c.png#height=180&id=wuHes&margin=%5Bobject%20Object%5D&name=image.png&originHeight=180&originWidth=694&originalType=binary&ratio=1&size=12892&status=done&style=none&width=694)<br />插件安装直接安装,会直接装到远程主机上面,docker也是一样的
  15. <a name="OuyQG"></a>
  16. # 二、Go离线库(nexus)
  17. ```shell
  18. # 1. 安装docker
  19. # 2. 给目录777的权限
  20. chmod 777 /opt/nexus3
  21. # 3. 启动nexus容器
  22. docker run -dit -p 8081:8081 -v /opt/nexus3/date:/nexus-data --name go-agent sonatype/nexus3

1、创建blob

image.png
image.png
image.png

2、创建goproxy

image.png
image.png
image.png

3、创建group组仓库

image.png
image.png
通过设置GOPROXY将代理指向私服地址,然后进行项目的编译,可以看到对应的依赖的包已经缓存到私服当中了。
通过查看go版本,采用下面的方式设置

[root@worker ~]# go version
go version go1.13.11 linux/amd64

如果您使用的 Go 版本是 1.12 及以下

# 启用 Go Modules 功能
export GO111MODULE=on
# 配置 GOPROXY 环境变量
export GOPROXY=http://10.11.24.10:8081/repository/go-group/

如果您使用的 Go 版本是 1.13 及以上,采用这个进行配置

go env -w GO111MODULE=on
go env -w GOPROXY=http://10.11.24.10:8081/repository/go-group,direct
go env -w GOSUMDB=off

代理网站

阿里云
配置如下:
export GOPROXY=https://mirrors.aliyun.com/goproxy/

nexus社区提供的
配置如下:
export GOPROXY=https://gonexus.dev

goproxy.io 的
配置如下:
export GOPROXY=https://goproxy.io/

基于athens的公共服务
配置如下:
export GOPROXY=https://athens.azurefd.net

官方提供的(jfrog,golang)
export GOPROXY=https://gocenter.io
export GOPROXY=https://proxy.golang.org

七牛云赞助支持的
export GOPROXY=https://goproxy.cn

使用go安装模块

[root@worker ~]# go get -u golang.org/x/sys
go: finding golang.org/x/sys latest
go: downloading golang.org/x/sys v0.0.0-20200610111108-226ff32320da
go: extracting golang.org/x/sys v0.0.0-20200610111108-226ff32320da

三、坑

1、远程死活连不上服务器

image.png
image.png
修改Config FIle

# 修改config文件位置
C:\\Users\\xxd\\.ssh\\config