Debian 打包与部署指南
本文档介绍如何在 Debian/Ubuntu 环境下构建 ems-simulate 的 .deb 安装包,以及如何安装和管理服务。
1. 环境准备
在开始构建之前,请确保您的构建机器(推荐 Ubuntu 20.04+ 或 Debian 10+)已安装以下必要工具:
- 基础工具:
git,dpkg-dev,binutils - Python 环境:
python3,pip(Python 3.11+) - Node.js 环境:
npm(用于构建前端)
安装命令示例:
bash
sudo apt update
sudo apt install -y git dpkg-dev binutils python3 python3-pip npm2. 构建步骤
项目的 scripts 目录下提供了自动化构建脚本,会自动处理前端编译、后端打包(PyInstaller)以及生成 .deb 包。
拉取代码:
bashgit clone https://github.com/600888/ems_simulate.git cd ems_simulate运行构建脚本: 构建脚本会自动安装 Python 依赖(通过
requirements.txt)并开始构建。bashchmod +x scripts/build_deb.sh ./scripts/build_deb.sh等待构建完成: 脚本执行完毕后,终端会显示构建成功的提示以及生成的包路径。
输出产物:
- 目录:
build/dist_deb/ - 文件:
ems-simulate_1.0.0_amd64.deb(版本号可能随项目更新)
- 目录:
3. 安装与卸载
安装
使用 dpkg 命令安装生成的 deb 包:
bash
# 请根据实际生成的文件名替换
sudo dpkg -i build/dist_deb/ems-simulate_1.0.0_amd64.deb安装完成后,服务会自动注册并配置开机自启(视 postinst 脚本逻辑而定,通常需要手动启动一次)。
卸载
保留配置卸载 (推荐)
仅删除程序文件,保留配置文件 (config.ini) 和运行时数据 (data/ 目录):
bash
sudo dpkg -r ems-simulate完全清除 (慎用)
删除程序文件、配置文件以及产生的所有数据(包括数据库):
bash
sudo dpkg -P ems-simulate4. 服务管理
安装包会自动安装 Systemd 服务文件 ems-simulate.service。您可以使用 standard systemctl 命令进行管理。
启动服务:
bashsudo systemctl start ems-simulate停止服务:
bashsudo systemctl stop ems-simulate重启服务:
bashsudo systemctl restart ems-simulate查看状态:
bashsudo systemctl status ems-simulate查看日志:
bash# 查看实时日志 journalctl -u ems-simulate -f设置开机自启:
bashsudo systemctl enable ems-simulate
5. 目录结构说明
安装后的主要文件位置:
- 程序主目录:
/usr/share/ems-simulate/ems_simulate: 主程序二进制文件www/: 前端静态资源data/: SQLite 数据库文件 (运行时生成)config.ini: 配置文件
- 服务文件:
/lib/systemd/system/ems-simulate.service - 可执行链接:
/usr/bin/ems-simulate