文章目錄
- 一、安裝go語言環境的方式
- 1.下載go安裝包,解壓,配置環境變量
- 2.壓縮項目上傳到服務器并解壓
- 3.來到項目的根目錄
- 3.開放端口,運行項目
- 二、打包的方式
- 1.在項目的根目錄下輸入以下命令
- 2.把打包好的文件上傳到服務器
- 3.部署網站
- 4.ssl證書
本著能跑就行的原則,這個博文主要是教你部署到linux服務器上面的幾種方式,go語言的項目是打包后不需要go環境也能跑的。
本人主機用的win10,操作系統用的是centos7.9,遠程連接主機軟件用的xsell,文件上傳下載工具用的是xftp,服務器是在阿里云買的。
國內的GPT用的是kimi和通義千問。如果你用的是烏班圖操作系統,你就可以復制粘貼命令問gpt,這個命令在烏班圖是什么。
一、安裝go語言環境的方式
1.下載go安裝包,解壓,配置環境變量
在這里要注意,我們的項目都是本地開發好的,你要選擇的安裝包要適應你的go.mod的文件,言外之意,選擇合適的安裝包你不需要改go.mod了。我們下載到/user/local/src里面
(有可能你下載不下來,如果下載不下來,請直接去官網下載安裝包到本地之后,使用文件上傳工具上傳到服務器)
wget https://golang.google.cn/dl/go1.21.5.linux-amd64.tar.gz -P /usr/local/src
解壓到/user/local里面
tar -C /usr/local -xzf go1.18.3.linux-amd64.tar.gz
配置環境變量
vim etc/profile
# 輸入以下信息并保存
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
重新加載,讓環境變量生效
source /etc/profile
驗證
go version
2.壓縮項目上傳到服務器并解壓
如果你的項目使用了,MySQL,Redis,請在你的服務器上也安裝這些東西,并且在代碼中也修改對應的賬戶和密碼以適應你的服務器。
我的建議是,使用寶塔或者1panel直接安裝就行了。1panel因為是使用docker來管理這些應用,所以,你需要配置docker的鏡像源。
1panel在線安裝
記得開放1panel對應的端口。寶塔也是
在我們本地找到項目的文件夾,進行壓縮,我個人習慣壓縮成zip,因為方便解壓縮。
壓縮工具使用WinRAR或者bandzip等等都行,只要能壓縮成zip無論用什么都行。(不會用壓縮工具的去百度)
使用文件傳輸工具進行上傳到服務器。
你可以使用任何的FTP工具對文件進行上傳,如果電腦上有現成的工具,直接上傳就行了,下面的內容是寫給沒有工具的。因為獲取工具的安裝包還挺麻煩的。
如果你沒有類型XFTP之類的工具,我的建議是使用寶塔,或者1panel這樣的運維管理工具,里面自帶上傳功能。因為我用的是1panel,所以這里只寫1panel。
下面是他們的安裝網站,你只需要打開這個網站。
1panel在線安裝
選擇你自己的操作系統,點擊復制。
可視化界面相信你會操作的.我把項目是上傳到了/opt目錄。
安裝解壓縮命令
sudo yum install unzip
解壓壓縮包
unzip 壓縮包的名稱
3.來到項目的根目錄
cd 項目的根目錄
這個是我的目錄結構,請注意main,go,我項目啟動都放在這個文件里面,這個位置很重要,因為我們把項目跑起來需要這個文件.
安裝需要的包,輸入下面的命令后就需要等待。
go mod tidy
3.開放端口,運行項目
在運行之前,你需要確保幾件事情
1.你的gin服務端口開放了嗎?端口開放一般直接去你買服務器的官網,里面有控制臺,找到安全組,端口公網開放即可。這個要么百度,要么等我再寫一篇吧。
2.用到MySQL了嗎?用到了的話,服務器的MySQL安裝好了嗎?代碼里面的連接MySQL的代碼和密碼改成服務器的了嗎?MySQL的端口對外開放了嗎?如果你使用1panel,應用里面的端口對外開放也要打開。
3.用到Redis了嗎?用到Redis的話,服務器的redis安裝好了嗎?代碼里面的連接redis的密碼改了嗎?端口對外開放了嗎?如果你使用1panel,應用里面的端口對外開放也要打開。
4.go真的安裝好了嗎?驗證了嗎?跟你的項目適配嗎?運行需要的包都安裝好了嗎?
5.代碼有沒有bug?項目在本地能不能正常的運行?
如果以上都OK的話,繼續進行下面的東西。
nohup go main.go&
二、打包的方式
1.在項目的根目錄下輸入以下命令
set GOOS=linux
set GOARCH=amd64
go build
需要注意的是,配置文件是不會被打包的,所以在使用viper加載配置文件的時候,注意好路徑問題。
2.把打包好的文件上傳到服務器
步驟跟上面一樣,這里就不寫了
3.部署網站
這里使用的寶塔部署,因為方便,能順便解決后面ssl證書問題
(怎么安裝寶塔就不說了,百度,然后安裝完后記得開放對應的端口以及把面板賬戶登錄信息給保存下來方便使用)
點擊網站
點擊go項目,點擊添加go項目
4.ssl證書
上面添加完后,就有這個設置,點擊設置
點擊ssl,點擊 let’s Encrypt,點擊我們的域名,點擊申請證書,就能解決ssl證書的問題了