go框架初步实现

go 搭建Api


文章目录

  • go 搭建Api
  • 前言
  • 一、安装go
    • 1、win10安装
    • 2、linux下安装和更换版本
  • 二、部署gin框架
    • 1.下载对应的环境
    • 2. 下载对应的框架
    • 3、 运行框架
  • 三、gin框架 linux 环境下部署
    • 1.使用supervisor管理go进程
    • 2.supervisor启动中可能出现的问题解决
    • 3.打包
    • 4.nginx反向代理
  • 总结


前言

学习初步搭建go 和 gin 框架,附带Linux部署


提示:以下是本篇文章正文内容,下面案例可供参考

一、安装go

1、win10安装

官网下安装

https://golang.google.cn/dl/

2、linux下安装和更换版本

1、yum安装

 yum install golang

2、更新需要的版本

 1、在官网找到想要的版本(我下载的是19.l版本)
 2、解压
     tar -zxvf go1.19.linux-amd64.tar.gz 
     解压完成后会生成一个go文件
 3、将文件放到固定的地方
    mv go/*  /usr/local/go
 4、 变更配置
    export PATH=P A T H : PATH:PATH:GOROOT/bin
    export GOROOT=/usr/local/go

3、 如果之前是用软连接的方式,需要将之前的软链接进行删除;

  cd /usr/bin
   ls -l go
   rm -f go gofmt

4、查看对应的 go 信息;

 1、ln -s /usr/local/go/bin/go go
 2、ln -s /usr/local/go/bin/gofmt gofmt
 3、ll -l go

5、查看版本

    go version

二、部署gin框架

1.下载对应的环境

   go get -u github.com/gin-gonic/gin

2. 下载对应的框架

   git clone https://github.com/wannanbigpig/gin-layout.git

3、 运行框架

# 建议开启GO111MODULE
# go env -w GO111MODULE=on

# 下载依赖
go mod download

# 首次运行会自动复制一份示例配置(config/config.example.yaml)文件到config目录(config/config.yaml)
go run main.go

# 项目起来后执行下面命令访问示例路由
curl "http://127.0.0.1:9999/api/v1/hello-world"
# {"code":0,"message":"OK","data":{"result":"hello gin-layout"},"cost":"6.151µs"}
curl "http://127.0.0.1:9999/api/v1/hello-world?name=world"
# {"code":0,"message":"OK","data":{"result":"hello world"},"cost":"6.87µs"}

三、gin框架 linux 环境下部署

1.使用supervisor管理go进程

   更新yum源
     yum install epel-release -y 
   安装
    yum install supervisor -y
  启动、重启、停止 supervisor
    systemctl start/restart/stop supervisord.service 
  设置开机启动supervisor
    systemctl enable supervisord.service 
  配置托管进程

   创建配置文件 /etc/supervisord.d/go-layout.ini,内容如下:

	[program:go-layout]
	command=/home/go/go-layout/cmd/go_layout_liunx -c=/home/go/gin-layout/configconfig.yaml
	directory=/home/go/go-layout
	autostart=true
	startsecs=5
	user=root
	redirect_stderr=true
	stdout_logfile=/home/go/go-layout/supervisord_go_layout.log
  加载新配置
	supervisorctl update
  服务启动、重启、停止
	supervisorctl start/restart/stop go-layout

2.supervisor启动中可能出现的问题解决

 supervisor 配置完毕,使用supervisorctl reload 和supervisorctl update 启动时候报错
    /usr/bin/python2 /usr/bin/supervisord -c /etc/supervisor/supervisord.conf

3.打包

   go build -o cmd/go_layout_liunx main.go

4.nginx反向代理

	server {
	    listen 9091;
	    server_name text.meiduinfo.cn
	    location / {
	        proxy_set_header Host $host;
	        proxy_pass http://172.0.0.1:9999;
	    }
	}

总结

提示:初步完善需要随时更新

你可能感兴趣的:(gin框架搭建,linux部署,服务器,golang,nginx,架构)