在Linux上部署Golang應用通常涉及以下幾個步驟:
下載并解壓Go安裝包:
訪問Go官方下載頁面下載最新版本的Go二進制安裝包。使用wget命令下載并解壓到/usr/local目錄下。
wget https://golang.org/dl/go1.18.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.18.linux-amd64.tar.gz
設置環境變量:
編輯~/.bashrc或~/.zshrc文件,添加以下行:
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export GOBIN=$GOPATH/bin
保存文件并運行以下命令使更改生效:
source ~/.bashrc
驗證安裝: 運行以下命令來驗證Go是否安裝成功:
go version
你應該能看到類似go version go1.18 linux/amd64的輸出。
創建一個簡單的Golang應用程序,例如一個HTTP服務器:
package main
import (
"fmt"
"net/http"
)
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello, World!")
})
http.ListenAndServe(":8080", nil)
}
在應用程序目錄中,使用以下命令構建程序:
go build
該命令會將程序編譯成可執行文件。執行完畢后,會在當前目錄下生成一個名為main的文件。
直接運行可執行文件: 使用以下命令運行編譯后的二進制文件:
./main
這將在本地8080端口啟動HTTP服務。
使用systemd進行管理:
為了使應用程序在后臺運行并在崩潰時自動重啟,可以創建一個systemd服務文件。
myapp.service的配置文件,并將以下內容復制到文件中:[Unit]
Description=My Golang App
After=syslog.target network.target
[Service]
Type=simple
User=root
WorkingDirectory=/path/to/your/app
ExecStart=/usr/local/go/bin/myapp
Restart=always
[Install]
WantedBy=multi-user.target
/etc/systemd/system目錄下,并使用以下命令重新加載systemd配置:sudo systemctl daemon-reload
sudo systemctl start myapp
sudo systemctl status myapp
sudo systemctl enable myapp
通過以上步驟,你就可以在Linux系統上成功部署并運行你的Golang應用程序了。