Files
tea-admin-parten/CICD_SETUP.md
2026-04-24 14:44:02 +08:00

150 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 宝塔面板 + Gitea CI/CD 配置指南
## 整体流程
```
代码推送 → Gitea CI/CD自动构建 → SSH上传到宝塔服务器 → 完成!
```
## 宝塔面板准备工作
### 1. 确认SSH权限
在宝塔面板中确认:
- **面板设置 → 面板账户** 中的SSH信息
- 或者在**安全 → SSH管理**中查看
### 2. 确保目录存在
在宝塔终端或SSH中创建部署目录
```bash
# 开发服务器
mkdir -p /www/wwwroot/test1.stnav.com/public/parten
chmod -R 755 /www/wwwroot/test1.stnav.com/public/parten
# 生产服务器
mkdir -p /www/wwwroot/default/chaz_admin/public/parten
chmod -R 755 /www/wwwroot/default/chaz_admin/public/parten
```
## Gitea Secrets配置
在仓库 **Settings → Secrets** 中添加以下变量:
### 开发服务器
| 变量名 | 值示例 | 说明 |
|--------|--------|------|
| `DEV_SERVER_IP` | `192.168.1.100` | 开发服务器IP |
| `DEV_SERVER_PATH` | `/www/wwwroot/test1.stnav.com/public/parten` | 部署路径 |
| `DEV_SSH_PASSWORD` | `你的SSH密码` | 服务器SSH密码 |
### 生产服务器
| 变量名 | 值示例 | 说明 |
|--------|--------|------|
| `PROD_SERVER_IP` | `192.168.1.101` | 生产服务器IP |
| `PROD_SERVER_PATH` | `/www/wwwroot/default/chaz_admin/public/parten` | 部署路径 |
| `PROD_SSH_PASSWORD` | `你的SSH密码` | 服务器SSH密码 |
## 宝塔防火墙配置
确保服务器的SSH端口默认22对Gitea Runner开放
1. 宝塔面板 → 安全 → 防火墙
2. 放行22端口或你自定义的SSH端口
## 使用流程
### 开发环境develop分支
1. **推送代码**
```bash
git checkout develop
git add .
git commit -m "update"
git push origin develop
```
2. **自动构建** - Gitea自动触发 `build-dev`
3. **手动部署**
- 进入仓库 **CI/CD → Pipelines**
- 找到 develop 分支的 Pipeline
- 点击 `deploy-dev` 的播放按钮 ▶️
4. **验证** - 访问 `https://test1.stnav.com/parten`
### 生产环境master分支
1. **合并代码**
```bash
git checkout master
git merge develop
git push origin master
```
2. **自动构建** - Gitea自动触发 `build-prod`
3. **手动部署**
- 进入仓库 **CI/CD → Pipelines**
- 找到 master 分支的 Pipeline
- 点击 `deploy-prod` 的播放按钮 ▶️
4. **验证** - 访问生产环境地址
## 宝塔站点配置(可选)
如果需要配置域名访问:
1. 宝塔面板 → 网站 → 添加站点
2. 填写域名(如:`test1.stnav.com`
3. 根目录选择 `/www/wwwroot/test1.stnav.com/public`
4. 创建完成后,在站点设置中:
- 网站目录 → 运行目录改为 `parten`
- 或创建反向代理到 `http://127.0.0.1:端口/parten`
## 常见问题
### 1. SSH连接失败
```
检查:
- 服务器IP是否正确
- SSH密码是否正确
- 防火墙是否放行22端口
- 宝塔SSH是否开启
```
### 2. 权限被拒绝
```
解决:
- 确认目标目录存在
- 检查目录权限chmod 755 目录路径
- 确认SSH用户有写入权限
```
### 3. 构建成功但部署失败
```
检查:
- Secrets中的密码是否正确
- 部署路径是否正确
- 服务器SSH服务是否运行
```
## 安全建议
⚠️ **重要提醒:**
- 生产服务器的密码建议定期更换
- 考虑使用Gitea的受限Runner来提高安全性
- 监控CI/CD日志及时发现异常
## 优势
使用宝塔面板的优势:
- ✅ 可视化管理服务器
- ✅ 方便查看日志和文件
- ✅ 内置防火墙和安全防护
- ✅ 简化SSL证书配置
- ✅ 图形化Nginx/Apache配置