在CentOS上部署Golang应用可以分为几个步骤,包括安装Go环境、编写和编译应用、配置系统服务以及启动和监控应用。以下是一个详细的指南:
首先,你需要在CentOS上安装Go编程语言环境。
更新yum包管理器:
sudo yum update -y
安装Go:
sudo yum install golang -y
验证安装:
go version
如果你需要特定版本的Go,可以手动下载并安装:
下载Go二进制文件(例如,Go 1.17):
wget https://golang.org/dl/go1.17.linux-amd64.tar.gz
解压到/usr/local
目录:
sudo tar -C /usr/local -xzf go1.17.linux-amd64.tar.gz
配置环境变量:
编辑~/.bashrc
或/etc/profile
文件,添加以下内容:
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
使环境变量生效:
source ~/.bashrc
验证安装:
go version
假设你已经有一个Go应用,或者你可以创建一个简单的示例应用:
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
保存文件为hello.go
,然后编译应用:
go build -o hello hello.go
这将在当前目录下生成一个名为hello
的可执行文件。
为了在CentOS上作为系统服务运行你的Go应用,你可以使用systemd
。
创建一个新的systemd服务文件:
sudo nano /etc/systemd/system/hello.service
添加以下内容:
[Unit]
Description=Hello World Go Application
After=network.target
[Service]
ExecStart=/path/to/your/hello
Restart=always
User=your_username
Group=your_groupname
Environment=PATH=/usr/local/go/bin:$PATH
[Install]
WantedBy=multi-user.target
替换/path/to/your/hello
为你的可执行文件的实际路径,your_username
和your_groupname
为运行服务的用户和组。
重新加载systemd配置:
sudo systemctl daemon-reload
启动服务:
sudo systemctl start hello
设置开机自启动:
sudo systemctl enable hello
检查服务状态:
sudo systemctl status hello
你可以使用systemctl
命令来管理你的服务,例如启动、停止、重启和查看日志:
# 启动服务
sudo systemctl start hello
# 停止服务
sudo systemctl stop hello
# 重启服务
sudo systemctl restart hello
# 查看服务状态
sudo systemctl status hello
# 查看服务日志
sudo journalctl -u hello
通过这些步骤,你应该能够在CentOS上成功部署和运行你的Golang应用。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:如何在Debian上部署Golang应用