在CentOS上搭建Golang服务器的步骤如下:
首先,你需要在CentOS系统上安装Golang。你可以从Golang官方网站下载适用于Linux的安装包。
CentOS 8及以上版本可以使用yum包管理器来安装Golang:
sudo dnf install golang
如果你需要特定版本的Golang,或者yum仓库中没有合适的版本,你可以手动下载并安装:
wget https://golang.org/dl/go1.17.6.linux-amd64.tar.gz
/usr/local
目录:sudo tar -C /usr/local -xzf go1.17.6.linux-amd64.tar.gz
~/.bashrc
或~/.bash_profile
文件,添加以下内容:export PATH=$PATH:/usr/local/go/bin
source ~/.bashrc
验证Golang是否安装成功:
go version
你应该能看到类似如下的输出:
go version go1.17.6 linux/amd64
创建一个新的目录来存放你的Go服务器项目:
mkdir ~/go-server
cd ~/go-server
在这个目录下创建一个简单的Go服务器:
// main.go
package main
import (
"fmt"
"net/http"
)
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello, World!")
})
fmt.Println("Starting server at port 8080")
if err := http.ListenAndServe(":8080", nil); err != nil {
fmt.Println(err)
}
}
在项目目录下运行以下命令来启动服务器:
go run main.go
你应该能看到类似如下的输出:
Starting server at port 8080
打开浏览器,访问http://your_server_ip:8080
,你应该能看到Hello, World!
的页面。
确保你的CentOS服务器的防火墙允许8080端口的流量:
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
为了方便管理,你可以创建一个systemd服务来启动和停止你的Go服务器。
sudo nano /etc/systemd/system/go-server.service
[Unit]
Description=Go Server
After=network.target
[Service]
User=your_username
Group=your_groupname
ExecStart=/usr/local/go/bin/go run /path/to/your/main.go
Restart=always
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl start go-server
sudo systemctl enable go-server
sudo systemctl status go-server
现在,你的Go服务器应该在CentOS上运行,并且可以通过systemd进行管理。