# 📦 1Panel部署打包清单 部署前请确保以下文件都已准备好: ## ✅ 必需文件 ### 应用文件 - [x] app.py - 主应用文件 - [x] wsgi.py - WSGI入口(生产环境) - [x] config.py - 配置文件 - [x] models.py - 数据模型 - [x] init_db.py - 数据库初始化脚本 - [x] requirements.txt - Python依赖列表 ### 配置文件 - [x] gunicorn_config.py - Gunicorn配置 - [x] .env.example - 环境变量模板 - [ ] .env - 生产环境变量(需在服务器上创建) ### 部署脚本 - [x] deploy.sh - 一键部署脚本 - [x] manage.sh - 应用管理脚本 ### 文档 - [x] DEPLOYMENT.md - 完整部署文档 - [x] QUICK_DEPLOY.md - 快速部署指南 - [x] README.md - 项目说明 ### 目录结构 ``` zjpb/ ├── static/ # 静态文件 │ ├── css/ │ ├── js/ │ └── uploads/ # 上传文件目录 ├── templates/ # 模板文件 │ ├── admin/ │ └── *.html ├── utils/ # 工具类 │ ├── website_fetcher.py │ ├── tag_generator.py │ └── bookmark_parser.py ├── migrations/ # 数据库迁移脚本 ├── logs/ # 日志目录(自动创建) └── venv/ # 虚拟环境(服务器上创建) ``` ## 🚫 排除文件(不要上传到服务器) - `__pycache__/` - Python缓存 - `*.pyc` - 编译的Python文件 - `.git/` - Git仓库 - `.env` - 本地环境变量 - `venv/` `env/` - 虚拟环境 - `test_*.py` - 测试文件 - `*.log` - 日志文件 - `logs/` - 日志目录 - `static/uploads/*` - 上传的文件 ## 📋 部署前检查清单 ### 本地准备 - [ ] 更新 requirements.txt - [ ] 测试应用运行正常 - [ ] 准备 .env.example 模板 - [ ] 压缩项目文件 ### 服务器准备 - [ ] 1Panel已安装 - [ ] MySQL数据库已创建 - [ ] 域名已解析(可选) - [ ] SSH访问权限 ### 部署步骤 - [ ] 上传项目文件到服务器 - [ ] 解压并设置目录权限 - [ ] 执行 deploy.sh 脚本 - [ ] 配置 .env 文件 - [ ] 初始化数据库 - [ ] 在1Panel中创建网站(反向代理) - [ ] 启动应用 - [ ] 配置SSL证书(可选) ### 部署后验证 - [ ] 前台页面访问正常 - [ ] 后台登录成功 - [ ] 修改默认管理员密码 - [ ] 测试网站添加功能 - [ ] 测试标签创建功能 - [ ] 测试图片上传功能 ## 🔐 安全检查 - [ ] 修改默认管理员密码 - [ ] 设置强密码的 SECRET_KEY - [ ] 配置 .env 权限(chmod 600) - [ ] 启用 SSL/HTTPS - [ ] 配置防火墙规则 - [ ] 定期备份数据库 ## 📝 压缩命令 Windows PowerShell: ```powershell Compress-Archive -Path * -DestinationPath zjpb.zip -Force ``` Linux/Mac: ```bash zip -r zjpb.zip . -x "*.pyc" "*__pycache__*" "*.git*" ".env" "venv/*" "test_*.py" "logs/*" ``` ## 🎯 快速部署(服务器上) ```bash # 1. 上传并解压 cd /www/wwwroot/zjpb unzip zjpb.zip # 2. 一键部署 chmod +x deploy.sh ./deploy.sh # 3. 配置环境变量 nano .env # 4. 启动应用 chmod +x manage.sh ./manage.sh start ``` 详细步骤请参考:`DEPLOYMENT.md`