温馨提示×

CentOS环境下Go语言如何部署应用

小樊
44
2025-03-03 10:17:23
栏目: 编程语言
GO开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在CentOS环境下部署Go语言应用通常包括以下几个步骤:

1. 安装Go环境

首先,需要在服务器上安装Go环境。可以从Go官方网站下载适合自己系统版本的Go并进行安装。例如,下载Go 1.18版本:

wget https://golang.google.cn/dl/go1.18.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.18.linux-amd64.tar.gz

2. 配置环境变量

安装完成后,需要配置系统环境变量,以便在全局使用Go。可以新增 /etc/profile.d/go.sh 文件,将以下内容写入:

export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

然后执行以下命令使更改生效:

source /etc/profile.d/go.sh

验证安装是否成功,可以输入:

go version

如果输出了Go的版本信息,说明安装成功。

3. 编译Go程序

使用 go build 命令对应用程序进行编译。例如,编译一个名为 main.go 的程序:

go build main.go

4. 使用systemd开机自启

为了系统服务的管理,可以使用systemd将Go程序注册为一个服务,然后实现开机自启动。

编写unit文件

/etc/systemd/system/ 目录下,新建一个名为 myapp.service 的服务文件,填入以下内容:

[Unit]
Description=My Go Application
After=syslog.target

[Service]
Type=simple
User=root
WorkingDirectory=/root/myapp
ExecStart=/root/myapp/myapp
Restart=always
RestartSec=5s

[Install]
WantedBy=multi-user.target

加载并启动服务

执行以下命令加载服务文件并启动服务:

systemctl daemon-reload
systemctl start myapp.service
systemctl status myapp.service

设置开机自启动

使用 enable 命令设置开机自启动:

systemctl enable myapp.service

5. 运行和监控应用

使用 nohup 命令在后台运行应用,并将输出重定向到日志文件:

nohup ./myapp > nohup.log 2>&1 &

可以使用 netstat 命令查找指定端口的进程:

netstat -tunlp | grep 9001

在生产环境中,建议使用更温和的方式来重启服务,而不是使用 kill -9

总结

以上步骤涵盖了在CentOS环境下从安装Go环境到部署应用的完整流程。通过这些步骤,你可以确保Go项目在CentOS服务器上稳定运行,并能够优雅地处理进程和配置更新。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:CentOS环境下Go语言如何调试

0