# 服务器登录与部署完整操作指南 ## 第一步:登录服务器 ### 方法 1:Windows PowerShell(最简单) 1. **打开 PowerShell** - 按 `Win + X` - 选择 **Windows Terminal** 或 **PowerShell** - 或者按 `Win + R`,输入 `powershell`,回车 2. **执行 SSH 登录命令** ```bash ssh root@47.98.113.167 ``` 3. **如果是第一次连接** - 会提示:`Are you sure you want to continue connecting (yes/no)?` - 输入 `yes`,回车 4. **输入密码** - 提示 `root@47.98.113.167's password:` - 输入服务器密码(输入时不显示,正常输入完回车即可) 5. **登录成功标志** ``` Welcome to Ubuntu 22.04.x LTS root@服务器名称:~# ``` --- ### 方法 2:使用 SSH 密钥(如果已配置) 如果你之前配置过密钥,直接: ```bash ssh root@47.98.113.167 ``` 不需要输入密码,直接登录。 --- ### 方法 3:通过阿里云/腾讯云控制台(如果忘记密码) 1. **登录云服务商控制台** - 阿里云:https://ecs.console.aliyun.com - 腾讯云:https://console.cloud.tencent.com/cvm 2. **找到你的服务器** - IP: `47.98.113.167` 3. **使用远程连接/VNC** - 点击 **远程连接** 或 **VNC** - 或者点击 **重置密码**,设置新密码后再用方法 1 登录 --- ## 第二步:清理服务器空间 登录成功后,复制下面的命令,粘贴到终端,回车执行: ```bash echo "==========================================" echo "开始清理服务器..." echo "==========================================" echo "" echo "当前磁盘占用:" df -h echo "" echo "清理 Docker 无用资源..." docker system prune -a --volumes -f echo "" echo "清理 systemd 日志(保留 7 天)..." journalctl --vacuum-time=7d echo "" echo "清理 APT 缓存..." apt-get clean apt-get autoremove -y echo "" echo "清理后磁盘占用:" df -h echo "" echo "==========================================" echo "清理完成!" echo "==========================================" ``` **预期结果:** - 会输出清理前后的磁盘占用对比 - 至少释放几 GB 空间 --- ## 第三步:执行部署 清理完成后,继续执行: ```bash cd /var/lib/xiaoxia-saas-staging/repo/infra/docker chmod +x deploy-staging.sh ./deploy-staging.sh ``` **部署过程会:** 1. 复制环境变量文件 2. 确保 public 目录存在 3. 构建 api、worker、web 三个镜像 4. 启动所有容器 **预计时间:** - api 和 worker:1-2 分钟(有缓存) - web:3-5 分钟(需要 npm install + next build) --- ## 第四步:验证部署 部署完成后,检查服务状态: ```bash # 查看容器状态 docker ps # 测试 API curl http://127.0.0.1:8000/api/v1/health # 查看前端端口(3001) curl -I http://127.0.0.1:3001 ``` **成功标志:** - `docker ps` 显示 5 个容器运行中(postgres、redis、api、worker、web) - API 返回健康检查 JSON - 前端返回 HTTP 200 --- ## 第五步:访问服务 在你的浏览器打开: - **API**: `http://47.98.113.167:8000/api/v1/health` - **前端**: `http://47.98.113.167:3001` --- ## 常见问题 ### Q1: 提示 "Permission denied" **原因**: 密码错误或没有权限 **解决**: - 确认密码正确 - 或者去云服务商控制台重置密码 ### Q2: 提示 "Connection refused" 或 "Network error" **原因**: 网络不通或服务器防火墙 **解决**: - 检查服务器是否开机 - 检查安全组/防火墙是否放行 22 端口 ### Q3: 部署时提示 "No space left on device" **原因**: 清理后空间还是不够 **解决**: ```bash # 查看最大的目录 du -sh /* | sort -hr | head -20 # 手动删除不需要的大文件/目录 ``` ### Q4: 部署过程中断 **原因**: 网络不稳定 **解决**: ```bash # 使用 tmux 隔离会话 tmux new -s deploy cd /var/lib/xiaoxia-saas-staging/repo/infra/docker ./deploy-staging.sh # 按 Ctrl+B, 然后按 D 离开 # 部署继续在后台跑,不会因为 SSH 断开而中断 # 重新连接查看 tmux attach -t deploy ``` --- ## 完整的一键操作(复制粘贴) 如果你想一次性执行所有步骤,登录后直接粘贴: ```bash echo "========== 步骤 1: 清理空间 ==========" && \ docker system prune -a --volumes -f && \ journalctl --vacuum-time=7d && \ apt-get clean && apt-get autoremove -y && \ echo "" && echo "========== 步骤 2: 开始部署 ==========" && \ cd /var/lib/xiaoxia-saas-staging/repo/infra/docker && \ chmod +x deploy-staging.sh && \ ./deploy-staging.sh && \ echo "" && echo "========== 步骤 3: 验证服务 ==========" && \ docker ps && \ curl http://127.0.0.1:8000/api/v1/health && \ echo "" && echo "========== 部署完成! ==========" ``` --- ## 需要帮助? 如果执行过程中遇到任何报错,把错误信息发给我,我帮你分析。