go-install-01-go软件包安装-开发环境配置

go-install-01-go软件包安装-开发环境配置

1.安装 go 软件包

1.1.Linux 下安装 go 软件包

  • linux 直接使用通用二进制包
# 创建目录
mkdir -p /opt/tools
cd /opt/tools
mkdir -p /home/zhaoshuai/go/bin

# 如果存在冲突的 go 软件包可按照以下方法进行清理
which go
rm -rf /usr/local/go

# 清理环境变量设置
env |grep GO
unset GOPATH
unset GOROOT
unset GOBIN

# 下载安装-次新版本
# wget https://golang.org/dl/go1.16.12.linux-amd64.tar.gz
wget https://studygolang.com/dl/golang/go1.16.12.linux-amd64.tar.gz
tar -xvf go1.16.12.linux-amd64.tar.gz
mv go /usr/local

# 设置环境变量
vim /etc/profile
---------------------------------
export GOROOT=/usr/local/go
export GOPATH=/home/zhaoshuai/go
export GOBIN=/home/zhaoshuai/go/bin
export PATH=$GOROOT/bin:$PATH
---------------------------------
source /etc/profile

echo $PATH
echo $GOROOT
echo $GOPATH
echo $GOBIN
go version
  • 检查测试
# 使用 go 程序测试
cd /tmp
vim helloworld.go
------------------------
package main
import "fmt"
func main() {
    fmt.Println("HelloWorld!")
}
------------------------
go run ./helloworld.go

1.2.Windows 下安装 go 软件包

# 下载安装,建议安装路径不要太深,安装时可以勾选自动配置环境变量,简化操作
D:\Tools\go

# 创建相关的工具目录
D:\Tools\goland
D:\Tools\vscode

# 创建 go 的项目目录
D:\workspace\go\bin
D:\workspace\go\pkg
D:\workspace\go\src
  • 手动设置环境变量
# 右键计算机-高级系统设置-系统属性:高级-环境变量
# 设置:administrator用户变量-新建或者编辑,也可以设置为系统环境变量,所有用户都生效

GOROOT=D:\Tools\go           # golang 的安装路径
GOPATH=D:\workspace\go       # go 项目的根路径
GOBIN=D:\workspace\go\bin    # go 的可执行文件路径
  • 检查测试
# 打开 cmd 执行
go version

1.3.Mac 下安装 go 软件包

  • 使用 mac 专用软件包,或者类似 Linux,也可以使用通用二进制包

软件下载地址: https://golang.org/dl/go1.16.12.darwin-amd64.pkg

2.配置 goproxy 加速代理

2.1.配置系统代理

  • go1.13 以上使用
# 查看 go 的环境配置
go env

# 开启代理设置,go1.13 以上默认启用
go env -w GO111MODULE=on

# 设置代理服务器-国内使用七牛云加速代理
# go env -w GOPROXY=https://goproxy.io,direct
go env -w GOPROXY=https://goproxy.cn,direct

2.2.使用自托管 Go 模块代理

vim goproxy.go
--------------------------
package main

import (
    "net/http"
    "os"

    "github.com/goproxy/goproxy"
)

func main() {
    http.ListenAndServe("localhost:8080", &goproxy.Goproxy{
        GoBinEnv: append(
            os.Environ(),
            "GOPROXY=https://goproxy.cn,direct", // 使用 Goproxy.cn 作为上游代理
            "GOPRIVATE=git.example.com",         // 解决私有模块的拉取问题(比如可以配置成公司内部的代码源)
        ),
        ProxiedSUMDBs: []string{
            "sum.golang.org https://goproxy.cn/sumdb/sum.golang.org", // 代理默认的校验和数据库
        },
    })
}
--------------------------
go run goproxy.go
# 开启代理设置
go env -w GO111MODULE=on
go env -w GOPROXY=http://localhost:8080,direct
posted @ 2021-04-28 19:09  天生帅才  阅读(248)  评论(0编辑  收藏  举报
// 百度统计