golang gin 服务器部署

4 篇文章 0 订阅
4 篇文章 0 订阅

golang gin 服务器部署

前言

golang使用gin开发完毕后,切不可直接运行或者使用go run xxx.go这种形式,比较正规的做法是,利用linux的服务去管理,不然ssh一退出,网站就停止了。

基本流程

简略流程如下:

  1. build出一个可执行文件
  2. 写一个sh文件,用来执行这个文件
  3. 配置service
  4. 启动
  5. 其他配置(反向代理、ssl证书等)

下面具体叙述

1、build 项目

我的项目中,主文件为main.go
执行:

go build main.go

则生成了一个新文件main
对其设置权限,这里用了777,因为有时候使用宝塔面板的时候,它的用户是www.

chmod 777 main
2、写执行脚本 run.sh

新建一个文件

vim run.sh

里面写这样的内容:

#!/bin/bash
# 设置为 release 生产模式
export GIN_MODE=release
# 切换到路径下,这样才能够使用和开发时候一样的相对路径
cd main文件所在的绝对路径
# 启动 build 后的可执行文件
./main

里面路径自行替换。
这里有两点需要注意的地方:

  1. 顶部的#!/bin/bash必不可少,如果少了这个,服务会无法启动。
  2. 使用先cd后执行的方式,可以让程序能够找到相对路径下的文件。
3、创建一个 service 配置文件

输入命令创建:

vim /lib/systemd/system/mpgo.service

其中mpgo为服务名称,以后启动都是这个名称。
里面写这样的内容:

[Unit]
Description=mpgo

[Service]
Type=simple
Restart=always
RestartSec=3s
ExecStart=run.sh文件的完整路径

[Install]
WantedBy=multi-user.target

路径需要自行替换
说明如下:

  • Description是对这个服务的描述
  • Restart=always服务异常退出时会重启
  • RestartSec=3s设置重启间隔为3
  • ExecStart=run.sh文件的完整路径这个服务会执行这个文件
  • WantedBy=multi-user.target所有用户都可以执行
4、启动

启动:

service mpgo start

重启:

service mpgo restart

停止:

service mpgo stop

状态:

service mpgo status
5、配置反向代理和ssl证书

这里推荐直接安装宝塔面板,里面有图形化界面操作。
步骤简略为:

  1. 反向代理:
    新建静态网站 --> 绑定域名 --> 网站设置中的反向代理 --> 代理80端口到golang的端口
  2. ssl证书
    宝塔面板中可以一键申请。
  • 5
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MichaelToLearn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值