Linux下Golang如何部署应用
在Linux上部署Golang应用需先安装Go环境,编译生成二进制文件;然后创建systemd服务单元,配置后台运行与自动重启;最后通过systemctl启动、启用服务并查看日志,完成部署验证。
在 Linux 上部署 Golang 应用,听起来复杂,其实拆开看就是几个标准动作。只要把环境配好、编译打包、再用 systemd 管起来,就能让应用稳定跑在后台,还能自动重启。下面按顺序走一遍。

安装 Golang
这一步没什么门槛。如果系统里还没装 Go,直接一行命令搞定:
sudo apt-get update
sudo apt-get install golang-go
注意,这是 Ubuntu/Debian 系的命令。如果你用的是 CentOS 或 RHEL,把包管理器换成 yum 或 dnf 就行。安装完用 go version 验证一下,确认版本没问题。
编译 Golang 应用
进入项目目录,执行:
go build -o myapp
会在当前目录生成一个叫 myapp 的可执行文件。注意这里的 -o 指定输出文件名,你完全可以改成自己想要的名字。把二进制文件放到一个固定的路径,比如 /opt/myapp/,方便后续管理。
创建 systemd 服务
手动启动程序容易,但要让它在后台持续运行、开机自启,还得靠 systemd。先创建一个服务文件:
sudo nano /etc/systemd/system/myapp.service
然后把下面这个模板贴进去——注意替换 User、Group 和 ExecStart 里的路径:
[Unit]
Description=My Golang App
After=syslog.target network.target
[Service]
User=
Group=
ExecStart=/path/to/your/myapp
Restart=always
[Install]
WantedBy=multi-user.target
几个关键点:Restart=always 保证程序挂了能自动拉起;After 确保网络和日志系统就绪后再启动应用。保存退出。
启动并启用服务
服务文件写完后,需要让 systemd 重新加载配置,然后启动并设为开机自启:
sudo systemctl daemon-reload
sudo systemctl start myapp
sudo systemctl enable myapp
这样应用就运行起来了。任何时候想重启,用 systemctl restart myapp 就行。
检查状态与日志
部署完成总要确认一下跑没跑对。用这个命令看服务状态:
sudo systemctl status myapp
如果显示 active (running),恭喜你,部署成功。一旦遇到异常,最实用的是查日志:
journalctl -u myapp
日志会告诉你程序为什么退出、卡在哪里。这个命令能往前翻很多条,配合 -f 参数还能实时跟踪输出。
整个流程走下来其实就五个环节:装 Go、编译、写服务文件、启动、检查。搞清楚每一步的坑(比如用户权限、路径写死、日志位置),之后部署任何 Go 应用都能举一反三。
AirBuddy 3 是面向 macOS 的蓝牙外设增强工具,可集中查看 AirPods、Beats 与苹果设备电量,提供快速连接、播放控制、电量提醒、桌面小组件和多台 Mac 外设接力等功能。
AirServer macOS版可把 Mac 转换为无线投屏接收端,通过 AirPlay 或 Google Cast 接收手机、平板和电脑画面,并支持多设备同时连接、高清镜像及会话录制,适合家庭娱乐、课堂教学、会议演示和应用展示。
AnyDesk macOS版是一款适用于远程办公、设备维护和客户支持的远程桌面工具,可连接并操作异地计算机,支持文件传输、无人值守访问、会话权限控制及跨平台协作。
AirServer Windows版可把电脑变成AirPlay、Google Cast和Miracast无线投屏接收端,适合会议演示、课堂教学及家庭大屏分享。发送设备通常无需另装客户端,并可同时接收和智能排列多个镜像会话。
AlwaysUp是一款面向Windows的系统服务注册与程序托管工具,可让普通应用、脚本及批处理在无人登录时随系统启动,并通过状态检测、异常重启、资源监控和邮件通知保障关键任务持续运行。







