# PromptForge 项目启动停止操作指南 ## 🚀 启动服务器 ### 方法一:直接启动(推荐) ```bash # 进入项目目录 cd /home/renjianbo/aiapply # 启动开发服务器 npx next@14.0.4 dev -H 0.0.0.0 -p 3000 & ``` ### 方法二:使用启动脚本 ```bash # 进入项目目录 cd /home/renjianbo/aiapply # 运行启动脚本 ./start.sh ``` ### 方法三:使用 PM2 进程管理器 ```bash # 进入项目目录 cd /home/renjianbo/aiapply # 启动 PM2 服务 pm2 start ecosystem.config.js # 查看服务状态 pm2 status # 查看日志 pm2 logs promptforge ``` ## 🛑 停止服务器 ### 方法一:停止所有 Next.js 进程 ```bash # 停止所有 next dev 进程 pkill -f "next dev" ``` ### 方法二:停止特定端口进程 ```bash # 查找占用 3000 端口的进程 netstat -tlnp | grep :3000 # 根据进程ID停止(替换 PID 为实际进程ID) kill -9 PID ``` ### 方法三:使用 PM2 停止 ```bash # 停止 PM2 服务 pm2 stop promptforge # 删除 PM2 服务 pm2 delete promptforge # 停止所有 PM2 服务 pm2 stop all ``` ## 📊 检查服务状态 ### 检查端口监听 ```bash # 检查 3000 端口是否被占用 netstat -tlnp | grep :3000 ``` ### 检查进程状态 ```bash # 查看 Next.js 相关进程 ps aux | grep next | grep -v grep ``` ### 检查服务日志 ```bash # 查看应用日志 tail -f app.log # 查看 PM2 日志 pm2 logs promptforge ``` ## 🌐 访问地址 - **本地访问**:http://localhost:3000 - **公网访问**:http://101.43.95.130:3000 - **网络访问**:http://0.0.0.0:3000 ## 🔧 常用命令 ### 重启服务 ```bash # 停止服务 pkill -f "next dev" # 等待 2 秒 sleep 2 # 重新启动 npx next@14.0.4 dev -H 0.0.0.0 -p 3000 & ``` ### 查看服务资源使用 ```bash # 查看 CPU 和内存使用 top -p $(pgrep -f "next dev") # 查看端口占用详情 lsof -i :3000 ``` ### 设置开机自启动(PM2) ```bash # 设置 PM2 开机自启动 pm2 startup # 保存当前 PM2 进程列表 pm2 save ``` ## ⚠️ 注意事项 1. **端口冲突**:确保 3000 端口没有被其他服务占用 2. **防火墙**:确保防火墙允许 3000 端口访问 3. **进程管理**:使用 `&` 后台运行或 PM2 管理进程 4. **日志监控**:定期检查日志文件,及时发现问题 5. **资源监控**:监控 CPU 和内存使用情况 ## 🆘 故障排除 ### 服务启动失败 ```bash # 检查 Node.js 版本 node --version # 检查依赖是否安装 npm list # 重新安装依赖 npm install ``` ### 端口被占用 ```bash # 查看占用端口的进程 sudo netstat -tlnp | grep :3000 # 强制停止占用进程 sudo kill -9 PID ``` ### 内存不足 ```bash # 查看内存使用 free -h # 清理缓存 npm cache clean --force ``` ## 📝 快速操作脚本 ### 一键启动 ```bash #!/bin/bash cd /home/renjianbo/aiapply pkill -f "next dev" 2>/dev/null sleep 2 npx next@14.0.4 dev -H 0.0.0.0 -p 3000 & echo "✅ PromptForge 服务已启动" echo "🌐 访问地址: http://101.43.95.130:3000" ``` ### 一键停止 ```bash #!/bin/bash pkill -f "next dev" echo "✅ PromptForge 服务已停止" ``` ### 一键重启 ```bash #!/bin/bash cd /home/renjianbo/aiapply pkill -f "next dev" sleep 2 npx next@14.0.4 dev -H 0.0.0.0 -p 3000 & echo "✅ PromptForge 服务已重启" echo "🌐 访问地址: http://101.43.95.130:3000" ``` --- **创建时间**:$(date) **项目路径**:/home/renjianbo/aiapply **服务端口**:3000 **公网地址**:101.43.95.130 # 查看服务状态 pm2 status # 重启服务 pm2 restart promptforge # 查看日志 pm2 logs promptforge # 停止服务 pm2 stop promptforge # 查看监控日志 tail -f logs/monitor.log # 手动运行监控 ./monitor.sh