要在Ubuntu上使用Golang编译服务端程序,请按照以下步骤操作:
go version
server.go。在此文件中,编写您的服务端程序代码。例如,以下是一个简单的HTTP服务器示例:package main
import (
"fmt"
"net/http"
)
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello, Golang server!")
})
port := ":8080"
fmt.Printf("Server is running at http://localhost%s\n", port)
err := http.ListenAndServe(port, nil)
if err != nil {
panic(err)
}
}
保存并关闭文件。接下来,打开终端并导航到包含server.go文件的目录。
在终端中,运行以下命令以编译您的服务端程序:
go build server.go
这将生成一个名为server(在Windows上为server.exe)的可执行文件。
./server
服务端程序将在端口8080上运行,您可以通过访问http://localhost:8080来查看结果。
systemd。首先,创建一个名为server.service的新文件:sudo nano /etc/systemd/system/server.service
将以下内容粘贴到文件中,然后保存并关闭:
[Unit]
Description=Golang Server
After=network.target
[Service]
User=<your-user>
Group=<your-group>
ExecStart=/path/to/your/server
Restart=always
[Install]
WantedBy=multi-user.target
请将<your-user>和<your-group>替换为您的用户名和组名,将/path/to/your/server替换为您的服务端程序可执行文件的路径。
sudo systemctl enable server
sudo systemctl start server
现在,您的Golang服务端程序将作为后台服务运行,并在系统启动时自动启动。
sudo systemctl status server
如果需要停止或重启服务,可以使用以下命令:
sudo systemctl stop server
sudo systemctl restart server