一、安裝 golang 和必要的工具
在進行 Golang 服務部署前,首先需要安裝 Golang 及必要的工具。可以通過以下命令來安裝:
sudo?apt-get?update sudo?apt-get?upgrade sudo?apt-get?install?golang sudo?apt-get?install?git
其中,最后一行安裝了 Git 工具。因為 Golang 項目通常都是通過 Git 進行版本管理的。安裝完成后,可以通過以下命令檢查是否安裝成功:
go?version git?version
如果以上兩個命令均輸出版本號,則表示安裝成功。
立即學習“go語言免費學習筆記(深入)”;
二、編寫 Golang 服務
在安裝好 Golang 和必要的工具之后,就可以開始編寫 Golang 服務了。以一個簡單的 http 服務為例,以下是代碼示例:
package?main import?( ????"fmt" ????"net/http" ) func?main()?{ ????http.HandleFunc("/",?helloHandler) ????fmt.Println("Server?started?on?port?8080") ????http.ListenAndServe(":8080",?nil) } func?helloHandler(w?http.ResponseWriter,?r?*http.Request)?{ ????fmt.Fprintf(w,?"Hello,?World!") }
該服務代碼功能簡單,監聽本地的 8080 端口,并對每個請求返回 “Hello, World!” 的字符串。使用 http.HandleFunc 方法來指定路由和對該路由的處理函數。
三、構建并測試 Golang 服務
在編寫好 Golang 服務代碼后,需要進行構建并測試。可以使用以下命令來構建服務:go build。該命令會在當前目錄下生成可執行文件。在測試前,需要先修改一下當前用戶的防火墻規則,以允許該服務監聽 8080 端口。可以使用以下命令:
sudo?ufw?allow?8080/tcp
修改完成后,即可啟動服務進行測試。可以使用以下命令啟動服務:
./?&
其中的 & 符號表示將服務放在后臺運行。啟動成功后即可使用瀏覽器或者 cURL 命令來訪問該服務。
四、使用 PM2 進行 Golang 服務部署
手動啟動 Golang 服務顯然不太友好,特別是當需要對該服務進行重啟或監控時,更不方便。所以,可以使用 PM2 工具來進行服務的管理和部署。PM2 是一個 Node.JS 生態圈中的進程管理工具,不過它也支持管理其他語言編寫的進程,包括 Golang。以下是使用 PM2 進行 Golang 服務部署的示例:
-
安裝 PM2
sudo?npm?install?-g?pm2
-
進入服務程序所在目錄,并使用以下命令啟動服務:
pm2?start??--name=
其中,–name 參數用于指定服務的名稱。
-
可以使用以下命令來查看服務的狀態:
pm2?list
-
對于已經被 PM2 管理的進程,可以使用以下命令來對該服務進行操作:
pm2?restart? pm2?stop? pm2?delete?