嗨玩手游网

Go语言项目上服务器流程

用Go语言gin框架写了一个测试接口

package mainimport ("github/gin-gonic/gin""log""net/http")func main() {r := gin.Default()r.GET("/test", func(c *gin.Context) {c.JSON(http.StatusOK, gin.H{"code": 1, "message": "success", "data": nil})})err := r.Run(":8080")if err != nil {log.Println(err)return}}

用goland编辑器可以正常跑起来,开发操作系统是Windows,现在就想打一个Linux可以跑起来的包。

首先CMD命令下设置参数

set GOARCH=amd64set GOOS=linux

通过go env命名查看设置成功。

go build -o main main.go

生成一个main文件,用Xshell工具打开服务器,安装lrzsz工具

yum -y install lrzsz

把生成的main文件拖拽到打开服务器的Xshell窗口,把main文件上传到服务器。给main设置成可执行文件(chmod -R 777 文件,初次测试给最大权限就对了)

chmod -R 777 main

命令行输入./main,发现跑起来了,但是浏览器输入ip:8080/test路径访问不了。那就再打开一个服务器窗口,curl 127.0.0.1:8080/test,发现没有安装curl工具。

yum install -y curl

安装完毕,再curl 127.0.0.1:8080/test下,发现可以请求得到。说明服务是正常的,那就查下服务器防火墙是否打开来了。

systemctl status firewalld

果然防火墙是打开的,反正是测试环境,就把防火墙关了,不去设置8080端口防火墙放行了。

systemctl stop firewalld

查看防火墙状态,确定把防火墙关闭了。那就再去浏览器输入ip:8080/test。果然可以访问了。

明天再测试下docker启动Go项目。记录下生活,有兴趣的,大家相互学习,相互交流。

更多攻略
游戏推荐
更多+