Golang 安装配置

这节主要做 Golang 安装配置,开发环境使用 Docker + Golang 镜像,编辑器使用 Visual Studio Code。还有一些辅助的工具包,如热编译、在线运行。

前置要求

  • Windows 10
  • Docker Desktop
  • Visual Studio Code 编辑器

环境搭建

Golang 搭建

  1. 拉取 Golang 镜像

    1
    docker pull golang:1.18

    推荐:

    很多时候为了节省硬盘空间,会使用 alpine 为基础的镜像,初期学习不要想着节省空间,alpine 虽然小但缺少很多依赖,反而需要花费很多时间去处理环境依赖问题。

  2. 创建项目文件夹

    项目文件夹定义在无中文的路径中,防止出现奇奇怪怪的问题。然后添加 Go 常用的目录

    项目目录

  3. 启动环境

    1
    docker run -itd --name golang1.18 -v F:/golang:/go golang:1.18

    注意:

    F:/golang 替换成你创建的开发目录

VSCode 相关配置

  1. 在宿主机中安装完插件,重启 VSCode
  • Docker
  • Remote-Containers
  • Remote Development
  1. 配置容器 VSCode

启动容器

连接容器

会启动一个新的 VSCode 界面

容器环境VSCode

在容器中安装以下 VScode 插件

  • Go
  1. 安装 Golang VScode 相关的工具

VSCode - 查看 - 命令面板

安装选项
选择全部工具

注意:

因为工具包几乎都在 github.com 上,会出现拉取失败的情况,需要切换成中国源才行。步骤如下:

  1. 在容器中执行 go env -w GO111MODULE=on 启动 go modules 模式
  2. 修改源地址 go env -w GOPROXY=https://proxy.golang.com.cn,direct
  3. 关闭容器 VSCode 重新打开(vscode 不会受命令行修改影响,所以需要重新打开来初始化配置)

安装完成

语言设置

环境变量

查看配置

1
go env -json

重要参数:

  • GOROOT: go 语言的安装目录
  • GOPATH: go 项目路径 通常包含 src、pkg、bin 三个目录
  • GOBIN: 在 linux | uniux 里可以解析 $HOME 变量,但是 windows 识别不了,需要重新定义

修改配置

1
go env -w {field}={value}
  • {field}: 设置项
  • {value}: 设置值

GO 代理

  • GoProxy【推荐】: 当前是我配置过拉取最快的一个源
  • 阿里源: 比较慢,安装 VSCode 的工具有些包会拉取失败。

验证开发环境是否正常

  1. 在 src 目录中创建名为 hello 的项目
  2. 在容器 VSCode 中打开目录
    打开目录
  3. 创建 main.go 入口文件,并添加以下内容
    1
    2
    3
    4
    5
    6
    7
    package main

    import "fmt"

    func main() {
    fmt.Println("hello world")
    }
  4. 在容器 VSCode 终端执行以下命令
    1
    2
    3
    go mod init
    go mod tidy
    go run .
    终端返回

热更新工具安装

go 语言是编译型语言,对新手来说修改了代码就代表需要重启进程,需要关闭后再启动,对于用惯 PHP 这种解释型语言的人来说是十分不习惯的。所以才想着找 vue-cli 类似的热更新工具。其原理很简单,就是检测文件修改时间是否变化,有变化就重新调起编译命令。

  1. 安装 air 工具
1
go install github.com/cosmtrek/air@latest
  1. 使用 air 启动项目
  2. 尝试变更内容

验证AIR效果

在线运行工具

还是编译型语言需要编译的问题,主要用于验证不确定的写法。如果是不需要保密的代码可以直接在网上找,否则需要自行搭建一个。搭建方法如下:

在容器中执行以下命令(可直接在容器 VSCode 终端中执行):

1
2
3
4
5
6
7
8
cd /go/src
mkdir tour
cd tour
go mod init
go mod tidy
go install github.com/Go-zh/tour

tour

启动 tour

Note:

因为 VSCode 安装了相关的工具,所以能自动绑定宿主机端口,点击在浏览器中打开 就能看到目标页了

使用 tour

小结

如果按照本文操作,相信已经把开发的环境搭建好了吧,编写代码时已经有代码提示,代码补全以及代码格式化等功能。下节将开始对基础使用进行讲解,只有把之前其他语言常用的写法有了转化,才能更快速的的上手一门语言。