Go打包 部署 优雅的把Go项目部署到Linux服务器

简介: go项目运行之后,修改.env文件不会立即生效,需要重启go服务才会生效;go项目运行之后,修改config.ini配置文件会立即生效,无需重启go服务

注意问题


  1. go项目运行之后,修改.env文件不会立即生效,需要重启go服务才会生效
  2. go项目运行之后,修改config.ini配置文件会立即生效,无需重启go服务


重新部署项目


  • 开发环境重新build项目(Mac环境的打包语法)


CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build


  • 查找指定端口的进程 博主的端口号9001


netstat -tunlp|grep 9001


注意:感谢掘友的评论,生产环境 ‘kill -9’ 太暴力,可能导致问题:进程在运行时突然终止,进程在结束后不能自我清理。


所以生产环境建议大家使用:


  • 4543是要结束的进程pid
  • singo是二进制文件名
  • 使用&&同时执行2条命令,避免服务中断


kill 4543 && nohup ./singo > nohup.log 2>&1 &


开发环境强制结束进程,可以使用 kill -9 :


  • 4543是要结束的进程pid
  • singo是二进制文件名
  • 使用&&同时执行2条命令,避免服务中断


kill -9 4543 && nohup ./singo > nohup.log 2>&1 &


附录Windows平台的打包语法


windows


set CGO_ENABLED=0 //禁用CGO
set GOOS=linux //目标平台为linux
set GOARCH=amd64 //目标处理器架构是amd64
go build -o name //编译可执行文件到当前目录 (-o:自定义文件名)


Mac


CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build


相关文章
|
3天前
|
监控 Linux Shell
|
6天前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
21 5
Linux系统之安装Ward服务器监控工具
|
10天前
|
前端开发 Unix Linux
揭秘 Electron 的 Linux 打包过程:你知道背后发生了什么吗?
本文详细介绍了 `electron-builder` 在 Linux 平台上如何打包 Electron 应用程序,涵盖了 AppImage、Flatpak、Snap 等多种格式的打包原理和具体实现。文章从初始化 `LinuxPackager` 到创建各种目标格式的包,详细解析了每个步骤的代码逻辑和关键方法,帮助开发者更好地理解和使用 `electron-builder` 进行 Linux 应用的打包。
37 2
揭秘 Electron 的 Linux 打包过程:你知道背后发生了什么吗?
|
1天前
|
存储 安全 关系型数据库
Linux系统在服务器领域的应用与优势###
本文深入探讨了Linux操作系统在服务器领域的广泛应用及其显著优势。通过分析其开源性、安全性、稳定性和高效性,揭示了为何Linux成为众多企业和开发者的首选服务器操作系统。文章还列举了Linux在服务器管理、性能优化和社区支持等方面的具体优势,为读者提供了全面而深入的理解。 ###
|
4天前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
70 2
|
21天前
|
Java Shell Maven
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
77 4
|
16天前
|
前端开发 Java Shell
后端项目打包上传服务器部署运行记录
后端项目打包上传服务器部署运行记录
16 0
|
21天前
|
Java Linux Maven
服务器部署之项目打包及命令行输出
服务器部署之项目打包及命令行输出
15 0
|
21天前
|
Unix Linux Go
Linux 使用Yum安装Go和配置环境
Linux 使用Yum安装Go和配置环境
|
24天前
|
存储 Linux
服务器数据恢复—Linux操作系统网站服务器数据恢复案例
服务器数据恢复环境: 一台linux操作系统网站服务器,该服务器上部署了几十个网站,使用一块SATA硬盘。 服务器故障&原因: 服务器在工作过程中突然宕机。管理员尝试重新启动服务器失败,于是将服务器上的硬盘拆下检测,发现很多坏扇区。联系当地的一家数据恢复公司处理,但是没有成功。