🔧 一、安装 PyInstaller(在联网机器上)
pip install pyinstaller
📁 二、准备你的 python 项目
假设你项目结构如下:
my_flask_project/
├── app.py # Flask 入口
├── templates/ # 模板文件夹
├── static/ # 静态资源
├── your_modules/ # 自定义模块
└── requirements.txt
✅三、新建build.sh脚本进行一键打包
build.sh内容:
#!/bin/bash
# 一键打包 Flask 项目的脚本
# 用于在 Linux/macOS 环境下使用 PyInstaller 构建单文件可执行程序
set -e # 遇到错误就退出
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
APP_NAME="app"
cd "$PROJECT_DIR"
echo "📦 清理旧的构建文件..."
rm -rf build/ dist/ __pycache__ *.spec
echo "🚀 开始打包 $APP_NAME.py 为可执行文件..."
pyinstaller --onefile \
--add-data "templates:templates" \
--add-data "keywords.txt:." \
--add-data "scan_results.csv:." \
--add-data "scan_errors.log:." \
--add-data "test_file:." \
"$APP_NAME.py"
echo "✅ 打包完成:dist/$APP_NAME"
echo "📁 你可以运行: ./dist/$APP_NAME"
📦 执行打包
赋予执行权限:
chmod +x build.sh
运行打包:
./build.sh
运行可执行文件
打包成功后会生成可执行文件在 dist/app,可以将其拷贝到目标服务器后执行./app即可运行。