Bootstrap

Ubuntu 基于Nginx1.8的Golang环境搭建(Ubuntu 20.04 + Nginx1.8 + Golang 1.17 )

本文环境 Windows10,Ubuntu 20.04,Nginx1.8,Golang 1.17

不懂的可以评论或联系我邮箱:owen@owenzhang.com

著作权归OwenZhang所有。商业转载请联系OwenZhang获得授权,非商业转载请注明出处。

本文是Windows10下的Ubuntu下已实践,放心使用,不懂联系我

Ubuntu 20.04 + Nginx1.8 + PHP 7.3 + Mysql8.0 + Redis5.0安装可以看我另外一篇文章

本文介绍Golang环境的安装

镜像下载

sudo mkdir /usr/local/src
cd /usr/local/src
sudo chmod 777 /usr/local/src
sudo chmod 644 ~/.wget-hsts
wget https://golang.google.cn/dl/go1.17.6.linux-amd64.tar.gz
sudo tar -zxvf go1.17.6.linux-amd64.tar.gz -C /usr/local/

调整环境变量

sudo mkdir /var/www/owengo
sudo chmod 777 /var/www/owengo
sudo vim ~/.bashrc

在最后添加

# 设置 GO 语言的路径
export GOROOT=/usr/local/go
# GoLang项目目录
export GOPATH=/var/www/owengo   
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

source ~/.bashrc

验证查看Golang版本

go version

输出结果:

go version go1.17.6 linux/amd64

运行自定义owengohello GO项目

cd /var/www/owengo
vim hello.go

package main //程序的包名

/*
import "fmt"
import "time"
*/
import (
  "fmt"
  "time"
)


//main函数
func main() { 
        //函数的{  一定是 和函数名在同一行的,否则编译错误
  //golang中的表达式,加";", 和不加 都可以,建议是不加
  fmt.Println(" Hello OwnGo!")

  time.Sleep(1 * time.Second)
}

1. 报错信息

go build

go: go.mod file not found in current directory or any parent directory; see ‘go help modules’

2. 查看 go env

go env

3. 设置 export GO111MODULE=auto

export GO111MODULE=autogo env

4. 此时还需要初始化Go moudle

go mod init XXX //xxx代表文件夹名

cd /var/www/owengogo mod init owengohello

5. go build报错$GOPATH/go.mod exists but should not

unset GOPATHgo build

6.运行./owengohello

./owengohello

Hello OwnGo!

Buy me a cup of coffee :)

觉得对你有帮助,就给我打赏吧,谢谢!