61 lines
1.2 KiB
Markdown
61 lines
1.2 KiB
Markdown
|
|
# 01-MySQL 部署
|
|||
|
|
|
|||
|
|
## 说明
|
|||
|
|
|
|||
|
|
部署 MySQL 数据库服务,使用 StatefulSet 保证数据持久化。
|
|||
|
|
|
|||
|
|
## 部署流程
|
|||
|
|
|
|||
|
|
1. **复制 SQL 文件** - 将 SQL 文件复制到 docker/mysql/db 目录
|
|||
|
|
2. **构建镜像** - 使用 docker-compose 构建包含 SQL 的 MySQL 镜像
|
|||
|
|
3. **部署到 K8s** - 部署 Service 和 StatefulSet
|
|||
|
|
4. **等待启动** - 等待 Pod 就绪
|
|||
|
|
|
|||
|
|
## 配置说明
|
|||
|
|
|
|||
|
|
- **Service 名称**: ruoyi-mysql
|
|||
|
|
- **端口**: 3306
|
|||
|
|
- **存储**: 10Gi PVC
|
|||
|
|
- **密码**: password
|
|||
|
|
- **数据库**: ry-cloud
|
|||
|
|
- **镜像**: mysql-runtime(通过 docker-compose 构建)
|
|||
|
|
|
|||
|
|
## 文件说明
|
|||
|
|
|
|||
|
|
- `service.yaml` - MySQL Service 配置
|
|||
|
|
- `statefulset.yaml` - MySQL StatefulSet 配置
|
|||
|
|
- `deploy.sh` - 一键部署脚本(包含镜像构建)
|
|||
|
|
|
|||
|
|
## 部署步骤
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 进入目录
|
|||
|
|
cd 01-mysql
|
|||
|
|
|
|||
|
|
# 执行部署脚本(会自动复制 SQL、构建镜像、部署到 K8s)
|
|||
|
|
./deploy.sh
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 验证
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 查看 Pod 状态
|
|||
|
|
kubectl get pods -n ruoyi -l app=mysql
|
|||
|
|
|
|||
|
|
# 查看 Service
|
|||
|
|
kubectl get svc -n ruoyi ruoyi-mysql
|
|||
|
|
|
|||
|
|
# 查看 PVC
|
|||
|
|
kubectl get pvc -n ruoyi
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 连接测试
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 进入 MySQL Pod
|
|||
|
|
kubectl exec -it mysql-0 -n ruoyi -- mysql -uroot -ppassword
|
|||
|
|
|
|||
|
|
# 查看数据库
|
|||
|
|
SHOW DATABASES;
|
|||
|
|
```
|