切换主题
这是你在 Windows 上编译并部署到阿里云 ECS 的实际操作步骤清单。
一、在 Windows(Git Bash)中编译 Linux 程序
打开 Git Bash,进入你的项目目录。
bashcd /d/ideaProject/ezbookkeeping设置编译环境变量,然后使用项目脚本编译。
bashexport GOOS=linux export GOARCH=amd64 export CGO_ENABLED=0 ./build.sh backend ./build.sh frontend编译成功后,项目根目录下会生成
ezbookkeeping(Linux程序)和dist(前端资源)文件夹。(验证) 检查生成的文件是否正确。
bashfile ezbookkeeping输出应包含 “ELF 64-bit LSB executable”,说明是 Linux 可执行文件。
二、上传文件到阿里云 ECS
在 ECS 上创建目录。
bashssh root@你的ECS_IP mkdir -p /home/ezbookkeeping在 本地的 Git Bash 中,上传必需的文件。
bashscp ezbookkeeping root@你的ECS_IP:/home/ezbookkeeping/ scp -r dist conf templates LICENSE root@你的ECS_IP:/home/ezbookkeeping/
三、在 ECS 上配置和启动
登录 ECS,进入目录并设置权限。
bashssh root@你的ECS_IP cd /home/ezbookkeeping chmod +x ezbookkeeping创建 Systemd 服务文件(
/etc/systemd/system/ezbookkeeping.service)。bashsudo tee /etc/systemd/system/ezbookkeeping.service <<-'EOF' [Unit] Description=EzBookkeeping Web Server After=network.target [Service] Type=simple User=root WorkingDirectory=/home/ezbookkeeping ExecStart=/home/ezbookkeeping/ezbookkeeping server run Restart=always RestartSec=5 [Install] WantedBy=multi-user.target EOF启动服务。
bashsudo systemctl daemon-reload sudo systemctl start ezbookkeeping sudo systemctl enable ezbookkeeping sudo systemctl status ezbookkeeping验证。
bash# 检查进程和端口 sudo ss -tlnp | grep :8080 # 本地测试 curl -I http://localhost:8080/
四、最后一步(必须做)
在 阿里云ECS控制台 配置安全组,为实例的 入方向 添加一条规则:
- 协议类型:
自定义 TCP - 端口范围:
8080/8080 - 授权对象:
0.0.0.0/0(或你的具体IP)
完成后,即可通过 http://你的ECS公网IP:8080 访问。
五、快速排错命令
- 看日志:
sudo journalctl -u ezbookkeeping -f - 测程序:
cd /home/ezbookkeeping && ./ezbookkeeping server run - 查端口:
sudo ss -tlnp | grep :8080
六、本地启动命令
后端
bashPS D:\ideaProject\ezbookkeeping> go run ezbookkeeping.go server run前端
bashnpm run serve
按以上步骤操作,即可完成部署。
