配置Go语言开发环境

配置Go语言开发环境:

大前提: 获取代理服务(进入墙外世界的一些办法)

window:

  1. go的安装,指定gopath
    golang.org;国内,go语言中文网,或其他镜像
    默认的是users/yourname/go 下,可以修改到另外合适的位置,也可以分成镜像和私有等等
  2. 环境变量
  3. git的安装
  4. git proxy 和 go get proxy 的解决,两者不同
    • 修改git环境变量:
      手动修改

      • system C://programdata
      • global C://user//.gitconfig
      • repo /.gitconfig

      命令行修改
      见 git help config -> info.text ;打开查看

    • 添加 go get 的系统代理
      go get 不会走git的用户配置的全局代理,需要配置系统全局代理,或者bash代理,或者goproxy才能使用
    • 方法 1,固定全局
      右键此电脑,高级系统管理,环境变量设置,设置之后,vscode内可以安装插件(看输出也明白实际也是使用go get命令):
      http_proxy socks5:http://127.0.0.1:8888
      https_proxy socks5:http://127.0.0.1:8888
    • 方法 2,暂时设置代理(powershell,bash 内),再使用go get自行安装
      set https_proxy=http://127.0.0.1:8888
      set http_proxy=http://127.0.0.1:8888
    • 方法 3,使用goproxy.io 进行代理,风险转移(参考 https://goproxy.io/zh/
  5. 开发工具 vscode
    win安装vscode属于傻瓜式,在官网获得安装包后,自行安装
  6. 开发工具的必备插件
    - 中文简体,搜索 Chinese(Simplified) Language
    - golang ,会建议一套插件,安装失败回去检查代理,网络
  Installing 17 tools at C:\go\bin in module mode.
  gocode
  gopkgs
  go-outline
  go-symbols
  guru
  gorename
  gotests
  gomodifytags
  impl
  fillstruct
  goplay
  godoctor
  dlv
  gocode-gomod
  godef
  goreturns
  golint

linux(ubuntu)

  • 问题:
  1. 获取ubuntu的发行版本
    推荐清华大学开源镜像站,或者阿里云,华为云;下载稳定。
  2. 安装ubuntu虚拟机,进行基础配置
    • 注意,安装64位镜像,需要现在外机的bios的虚拟机选项中启用虚拟化选项才能有效安装,老的型号的电脑没有这个选项,请注意检查
    • 获取ubuntu镜像后,校验md值(如果网络环境不稳定,建议校验)
    • 下载vmworkstation prod 新版;新建虚拟机;选择自定义,一直下一步到,稍后安装操作系统,或者直接安装程序光盘。区别在于前者需要自己挂载光盘文件,后者先行挂载。
    • 下一步操作系统选择linux,发行版选择对应版本
    • 下一步继续分配硬件资源ubuntu20.14 最低要求,2核cpu,4gb内存,在分配时,需要分配硬件时需要分配足够
    • 默认使用nat网络
    • 下一步到完成,点击完成后,如果预先勾选了安装程序光盘映像文件,虚拟机启动时,会直接光盘启动;勾选的稍后安装操作系统,在设置-硬件选项中使用虚拟光盘文件,选择你下载的iso文件
    • 光盘启动后,会进入ubuntu安装界面,如果是u盘启动,会进入ubuntu桌面,类似老毛桃pe,可以点击上面的安装进入安装界面
    • 安装时,基本勾选默认,因为是简单使用的虚拟机,不需要在分区上太花心思;注意,第一,不需要勾选预下载更新,减少安装时间,减少网络对安装的影响,第二,勾选第三方硬件驱动选项,预先安装,第三
      ,勾选最小化安装,节省安装时间,减少预装,可以后续自己配置,第四,语言可以提前选择中文简体,时区选择上海。
    • 等待安装完成,重启虚拟机。
    • 进入虚拟机,检查网络是否可以使用,nat网络由主机网络映射,出问题的概率最小;
    • 更新源,更新程序,清空不再使用的软件包; sudo apt-get update,sudo apt-get upgrade,sudo apt-get autoremovereboot重启虚拟机
    • 安装open-vmware-tool启用黏贴板共享,调节分辨率,可以通过apt install 安装,也是ubuntu的建议安装选项;当然你也可以通过虚拟机选项,安装扩展工具,不过不建议。
      sudo apt-get install open-vm-tools
  3. 配置ubuntu语言,输入法(非搜狗),获取图形化配置工具,,字体;个性化
    • install dconf-editor 关闭窗口动画
    • 添加中文,中文输入法;在应用->全部中,找到language support,添加中文,等待安装完成,点击应用到所有,选择输入法为ibus
    • sudo apt-get install ibus-pinyin 安装ibus下的智能拼音
    • 在设置,区域语言,中,在输入源中添加汉语->中文智能拼音
    • 在上方语言,格式中选择,汉语,中国


  1. 安装go并配置环境变量
    1. 下载解压,配置环境
    2. 通过软件源傻瓜式安装
    3. 通过go env 查看环境变量
    4. 添加私有路径到gopath,公有镜像和私人代码分开
    5. 修改proxy,使用goproxy.io
Command 'go' not found, but can be installed with:

sudo snap install go         # version 1.15.2, or
sudo apt  install golang-go  # version 2:1.13~1ubuntu2
sudo apt  install gccgo-go   # version 2:1.13~1ubuntu2

See 'snap info go' for additional versions.
# 使用最新版本通过以下命令安装
#This revision of snap "go" was published using classic confinement and thus may perform
#       arbitrary system changes outside of the security sandbox that snaps are usually confined to,
#       which may put your system at risk.
#
#     If you understand and want to proceed repeat the command including --classic.
$ sudo snap --classic install go
$ go version
go version go1.15.2 linux/amd64
# Custom gopath
# Here's an example directory layout:
#   新增路径到gopath的例子
#    GOPATH=/home/user/go
#
#    /home/user/go/
#       src/
#            foo/
#               bar/               (go code in package bar)
#                    x.go
#                quux/              (go code in package main)
#                    y.go
#        bin/
#            quux                   (installed command)
#        pkg/
#            linux_amd64/
#                foo/
#                    bar.a          (installed package object)
#给GOPATH 添加路径
$go env -w GOPATH="/home/godev/go;/home/godev/Mygolib"
#给go get 添加GOPROXY
$go env -w 
  1. 安装git
    sudo apt-get install git
  2. 安装vscode
    sudo snap install --classic code # or code-insiderssudo apt get install ./<filename>.deb;使用snap是官方推荐的方式,便于解决依赖问题
  3. 解决系统代理问题
    1. 通vZray等代理软件 (使用脚本安装,TODO)
    2. 和主机共享代理,代理软件勾选,允许来自局域网的连接;ubuntu 设置socks5地址为主机的ip+代理端口;更为简单有效(对wget,git都是有效果的,属于全局效用)


  1. 虚拟机终端走代理(TODO)
    使用 proxychains4
  2. git的多层配置,全局,用户,以及仓库的理解(TODO)
  3. 安装vscode的插件
    使用snap安装的go,需要在vscode的配置文件中配置默认的goroot;配置用户或者workspace的setting.json,需要配置的和go env显示的一致
    {
    "go.goroot": "/snap/go/6439"
    }
    之后安装插件,就不会出现找不到go位置的问题


参考链接
https://my.oschina.net/ouminzy/blog/904573/ "git windows环境变量的位置"> https://goproxy.io/zh/ "一个全球代理为 Go 模块而生"
https://www.vZray.com/chapter_00/install.html "vZray的安装"
https://blog.csdn.net/weixin_45467056/article/details/105956782 "ubuntu虚拟机使用主机代理"
https://blog.csdn.net/u011240016/article/details/78507073 "基于proxychains4进行终端加速 wget,curl等"
vZray ->Z,2

posted on 2020-09-28 20:39  Quaci  阅读(525)  评论(0)    收藏  举报