温馨提示×

golang编译ubuntu服务端程序的方法

小樊
41
2025-11-24 19:14:30
栏目: 编程语言

要在Ubuntu上使用Golang编译服务端程序,请按照以下步骤操作:

  1. 首先,确保您已经安装了Golang。如果尚未安装,请访问Golang官方网站(https://golang.org/dl/)下载并安装适用于Ubuntu的Golang版本。安装完成后,运行以下命令以验证安装是否成功:
go version
  1. 使用文本编辑器创建一个新的Go源文件,例如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)
	}
}
  1. 保存并关闭文件。接下来,打开终端并导航到包含server.go文件的目录。

  2. 在终端中,运行以下命令以编译您的服务端程序:

go build server.go

这将生成一个名为server(在Windows上为server.exe)的可执行文件。

  1. 现在,您可以通过运行以下命令来启动服务端程序:
./server

服务端程序将在端口8080上运行,您可以通过访问http://localhost:8080来查看结果。

  1. 若要将服务端程序作为后台服务运行,您可以使用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替换为您的服务端程序可执行文件的路径。

  1. 通过运行以下命令启用并启动服务:
sudo systemctl enable server
sudo systemctl start server

现在,您的Golang服务端程序将作为后台服务运行,并在系统启动时自动启动。

  1. 若要检查服务状态,请运行以下命令:
sudo systemctl status server

如果需要停止或重启服务,可以使用以下命令:

sudo systemctl stop server
sudo systemctl restart server

0