在CentOS環境下部署Golang應用程序通常涉及以下幾個步驟:
對于CentOS 8及以上版本,可以使用yum包管理器安裝Golang:
sudo yum update -y
sudo dnf install golang -y
對于CentOS 7及以下版本,可以使用yum包管理器安裝Golang:
sudo yum update -y
sudo yum install golang -y
驗證安裝:
go version
wget https://golang.org/dl/go1.20.5.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.20.5.linux-amd64.tar.gz
~/.bashrc
或~/.bash_profile
文件,添加以下內容:export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export GO111MODULE=on
然后使配置生效:
source ~/.bashrc
驗證安裝:
go version
在項目根目錄下,使用以下命令進行交叉編譯,生成適用于Linux的可執行文件:
GOOS=linux GOARCH=amd64 go build -o myapp-linux-amd64 main.go
使用scp或其他文件傳輸工具將編譯好的可執行文件上傳到CentOS服務器:
scp myapp-linux-amd64 user@your_server_ip:/path/to/deploy
在服務器上,為二進制文件賦予執行權限,并后臺運行:
chmod +x /path/to/deploy/myapp-linux-amd64
nohup /path/to/deploy/myapp-linux-amd64 > /path/to/deploy/log.log 2>&1 &
編寫一個Dockerfile:
# 使用官方的 Golang 鏡像作為基礎鏡像
FROM golang:1.18
# 設置工作目錄
WORKDIR /app
# 復制 Golang 應用程序到容器中
COPY . /app
# 構建 Golang 應用程序
RUN go build -o myapp-linux-amd64 main.go
# 暴露端口
EXPOSE 8080
# 運行 Golang 應用程序
CMD ["./myapp-linux-amd64"]
構建Docker鏡像:
docker build -t myapp .
運行Docker容器:
docker run -p 8080:8080 myapp
安裝寶塔面板并配置網站:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
登錄寶塔面板,創建網站并上傳代碼,配置啟動項并運行項目。