211 lines
5.8 KiB
Markdown
211 lines
5.8 KiB
Markdown
|
|
# 如何向AI助手提出部署需求
|
|||
|
|
|
|||
|
|
## 一、部署需求的标准格式
|
|||
|
|
|
|||
|
|
当你需要AI助手帮你生成部署文件并说明部署流程时,请按照以下格式提供信息:
|
|||
|
|
|
|||
|
|
### 必需信息
|
|||
|
|
|
|||
|
|
1. **部署环境**
|
|||
|
|
- 操作系统类型(如:Linux、Windows)
|
|||
|
|
- 容器化环境(如:Docker、Kubernetes)
|
|||
|
|
- 服务器类型(如:NAS、云服务器、本地服务器)
|
|||
|
|
|
|||
|
|
2. **访问信息**
|
|||
|
|
- 前端访问地址(域名或IP + 端口)
|
|||
|
|
- 后端API地址(如果与前端不同)
|
|||
|
|
|
|||
|
|
3. **文件路径**
|
|||
|
|
- 项目文件在服务器上的存储路径
|
|||
|
|
- 配置文件在服务器上的存储路径
|
|||
|
|
- 日志文件存储路径(如果需要)
|
|||
|
|
|
|||
|
|
4. **现有配置参考**
|
|||
|
|
- 如果服务器上已有类似项目的配置,请提供配置文件内容
|
|||
|
|
- 这样可以让AI助手了解你的配置风格和规范
|
|||
|
|
|
|||
|
|
5. **项目类型**
|
|||
|
|
- 前端框架(如:Vue、React、Angular)
|
|||
|
|
- 后端框架(如:Express、Koa、NestJS)
|
|||
|
|
- 构建工具(如:Vite、Webpack)
|
|||
|
|
|
|||
|
|
6. **进程管理方式**
|
|||
|
|
- 是否使用进程管理工具(如:PM2、systemd、supervisor)
|
|||
|
|
- 如果使用,请说明具体工具
|
|||
|
|
|
|||
|
|
7. **特殊要求**
|
|||
|
|
- 端口映射需求
|
|||
|
|
- 反向代理需求
|
|||
|
|
- WebSocket支持
|
|||
|
|
- 文件上传大小限制
|
|||
|
|
- 超时时间设置
|
|||
|
|
- 其他特殊配置
|
|||
|
|
|
|||
|
|
### 可选信息
|
|||
|
|
|
|||
|
|
- 数据库连接信息
|
|||
|
|
- Redis连接信息
|
|||
|
|
- 第三方服务集成
|
|||
|
|
- 环境变量配置
|
|||
|
|
- SSL/HTTPS证书配置
|
|||
|
|
|
|||
|
|
## 二、示例模板
|
|||
|
|
|
|||
|
|
你可以直接复制以下模板,填写你的具体信息:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
我需要在【部署环境】上部署一个【项目类型】项目。
|
|||
|
|
|
|||
|
|
【环境信息】
|
|||
|
|
- 操作系统:【Linux/Windows/macOS】
|
|||
|
|
- 容器化:【Docker/Kubernetes/无】
|
|||
|
|
- 服务器类型:【NAS/云服务器/本地服务器】
|
|||
|
|
|
|||
|
|
【访问信息】
|
|||
|
|
- 前端访问地址:【域名或IP:端口】
|
|||
|
|
- 后端API地址:【域名或IP:端口】
|
|||
|
|
|
|||
|
|
【文件路径】
|
|||
|
|
- 项目文件目录:【服务器上的绝对路径】
|
|||
|
|
- 配置文件目录:【服务器上的绝对路径】
|
|||
|
|
- Systemd服务目录:【/etc/systemd/system/】
|
|||
|
|
|
|||
|
|
【现有配置参考】
|
|||
|
|
【如果有现有配置文件,请粘贴内容】
|
|||
|
|
|
|||
|
|
【项目类型】
|
|||
|
|
- 前端框架:【Vue3/React/Angular】
|
|||
|
|
- 后端框架:【Express/Koa/NestJS】
|
|||
|
|
- 构建工具:【Vite/Webpack】
|
|||
|
|
|
|||
|
|
【进程管理】
|
|||
|
|
- 使用【systemd/PM2/无】管理后端进程
|
|||
|
|
|
|||
|
|
【特殊要求】
|
|||
|
|
- 【列出你的特殊需求】
|
|||
|
|
|
|||
|
|
请帮我生成部署文件并说明完整的部署流程。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 三、实际案例
|
|||
|
|
|
|||
|
|
以下是一个完整的实际案例:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
我在飞牛OS的NAS系统上的Docker里部署了一个Nginx,现在需要发布项目。
|
|||
|
|
|
|||
|
|
【环境信息】
|
|||
|
|
- 操作系统:Linux(飞牛OS)
|
|||
|
|
- 容器化:Docker
|
|||
|
|
- 服务器类型:NAS
|
|||
|
|
|
|||
|
|
【访问信息】
|
|||
|
|
- 前端访问地址:blv-rd.tech:20001
|
|||
|
|
- 后端API地址:http://127.0.0.1:3001
|
|||
|
|
|
|||
|
|
【文件路径】
|
|||
|
|
- 项目文件目录:/vol1/1000/Docker/nginx/project/bls/bls_project_console
|
|||
|
|
- 配置文件目录:/vol1/1000/Docker/nginx/conf.d
|
|||
|
|
- Systemd服务目录:/etc/systemd/system/
|
|||
|
|
|
|||
|
|
【现有配置参考】
|
|||
|
|
现在配置文件路径下有一个文件:weknora.conf,内容是:
|
|||
|
|
server {
|
|||
|
|
listen 80;
|
|||
|
|
server_name bais.blv-oa.tech;
|
|||
|
|
client_max_body_size 100M;
|
|||
|
|
|
|||
|
|
location / {
|
|||
|
|
proxy_pass http://host.docker.internal:19998;
|
|||
|
|
proxy_set_header Host $host;
|
|||
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|||
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|||
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|||
|
|
proxy_connect_timeout 60s;
|
|||
|
|
proxy_send_timeout 60s;
|
|||
|
|
proxy_read_timeout 300s;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
location /api/ {
|
|||
|
|
proxy_pass http://host.docker.internal:19996;
|
|||
|
|
proxy_set_header Host $host;
|
|||
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|||
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|||
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|||
|
|
proxy_connect_timeout 60s;
|
|||
|
|
proxy_send_timeout 60s;
|
|||
|
|
proxy_read_timeout 300s;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
【项目类型】
|
|||
|
|
- 前端框架:Vue3
|
|||
|
|
- 后端框架:Express
|
|||
|
|
- 构建工具:Vite
|
|||
|
|
|
|||
|
|
【进程管理】
|
|||
|
|
- 使用systemd管理后端进程
|
|||
|
|
|
|||
|
|
【特殊要求】
|
|||
|
|
- 需要支持文件上传,限制100M
|
|||
|
|
- 需要反向代理API请求到后端
|
|||
|
|
- 需要支持Vue Router的history模式
|
|||
|
|
- 编译工作在本地完成,只需要复制文件到服务器
|
|||
|
|
- 后端需要通过systemd服务管理,支持开机自启
|
|||
|
|
|
|||
|
|
请帮我生成部署文件并说明完整的部署流程。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 四、AI助手会做什么
|
|||
|
|
|
|||
|
|
根据你提供的信息,AI助手会:
|
|||
|
|
|
|||
|
|
1. **分析项目结构**
|
|||
|
|
- 识别前端和后端文件
|
|||
|
|
- 确定构建配置
|
|||
|
|
|
|||
|
|
2. **生成配置文件**
|
|||
|
|
- Nginx配置文件
|
|||
|
|
- Systemd服务配置文件(如果需要)
|
|||
|
|
- 其他必要的配置文件
|
|||
|
|
|
|||
|
|
3. **编写部署文档**
|
|||
|
|
- 详细的部署步骤
|
|||
|
|
- 前端部署流程
|
|||
|
|
- 后端部署流程
|
|||
|
|
- 验证方法
|
|||
|
|
- 常见问题排查
|
|||
|
|
|
|||
|
|
4. **提供后续更新流程**
|
|||
|
|
- 如何更新前端
|
|||
|
|
- 如何更新后端
|
|||
|
|
- 如何重启服务
|
|||
|
|
- 如何管理systemd服务
|
|||
|
|
|
|||
|
|
## 五、注意事项
|
|||
|
|
|
|||
|
|
1. **提供准确信息**:确保提供的路径、端口、域名等信息准确无误
|
|||
|
|
2. **说明限制条件**:如果有任何限制(如只能复制文件、不能在服务器上编译等),请明确说明
|
|||
|
|
3. **提供现有配置**:如果有现有配置文件,请提供内容,这样AI助手可以保持配置风格一致
|
|||
|
|
4. **明确特殊需求**:如果有特殊要求(如WebSocket、文件上传、超时设置等),请详细说明
|
|||
|
|
|
|||
|
|
## 六、快速参考
|
|||
|
|
|
|||
|
|
如果你只是想更新现有项目,可以简化需求:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
我需要更新【项目名称】的部署配置。
|
|||
|
|
|
|||
|
|
【变更内容】
|
|||
|
|
- 【说明需要变更的地方】
|
|||
|
|
|
|||
|
|
【现有配置】
|
|||
|
|
【提供现有配置文件内容】
|
|||
|
|
|
|||
|
|
请帮我更新配置文件并说明如何应用变更。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
**提示**:将此文件保存到项目的 `docs/` 目录下,方便随时查阅和参考。
|