溫馨提示×

CentOS環境下Go語言如何部署應用

小樊
77
2025-03-03 10:17:23
欄目: 編程語言

在CentOS環境下部署Go語言應用通常包括以下幾個步驟:

1. 安裝Go環境

首先,需要在服務器上安裝Go環境??梢詮腉o官方網站下載適合自己系統版本的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服務器上穩定運行,并能夠優雅地處理進程和配置更新。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女