使用 Yaml 部署 Wordpress 和 Mysql
本示例描述了如何通过一组 Yaml 声明式配置文件,在 Rainbond 上安装 WordPress 和 MySQL。
这两个组件:
- 分别使用 Deployment 和 StatefulSet 两种 Workload 资源部署。
- 使用 PersistentVolumes 和 PersistentVolumeClaims 保存数据。
- 通过 Service 完成彼此间通信。
- 通过 Sercet 实现环境变量的加密获取。
caution
警告: 这种部署并不适合生产场景,因为它使用的是单实例 WordPress 和 MySQL Pod。 在生产场景中,请考虑使用 WordPress Helm Chart 部署 WordPress。
教程目标
- 通过 Yaml 文件将 Workload 类资源部署到 Rainbond 中,包括 WordPress 和 MySQL。
- 在应用中的
应用 > k8s资源
处管理非 Workload 类资源,包括 Service 和 Sercet。 - 在组件中的
其他设置 > Kubernetes属性
处管理 Workload 的各种属性,包括 labels、volumes、volumeMounts 和取自其他来源的 env。 - 在组件中的
环境设置
处管理可以被 Rainbond 直接转化的 Workload 属性,包括自定义环境变量的配置。
准备开始
wordpress-depoyment.yaml,其中定义了:
- Deployment: wordpress
- Service: wordpress
- PersistentVolumeClaim: wp-pv-claim
wordpress-depoyment.yaml
mysql-statefulset.yaml,其中定义了:
- StatefulSet: wordpress-mysql
- Service: wordpress-mysql
- Secret: mysql-pass
mysql-statefulset.yaml
部署操作
从
工作空间
进入指定的团队,通过点击新建 > Kubernetes YAML Helm
即可进入文件上传页面。选择所属应用,或新建应用。
从本地计算机中上传准备好的 Yaml 文件,支持批量上传。
等待文件列表中出现所上传的 Yaml 文件。
点击
确认创建
。Rainbond 将展示从 Yaml 中解析出的资源列表,对于上述 Wordpress 建站系统的 Yaml 而言,用户应该可以看到列表中包含以下内容,确认无误后,可以点击
下一步
:
资源列表
- 在这个页面中,Rainbond 更加细化的展示对于每一种资源的处理方式,此页面无法编辑,确认无误后点击
部署
:
高级资源
- wordpress 与 wordpress-mysql 已经被转化成为 Rainbond 中的组件,并且完成了构建过程,目前组件尚未启动,用户在此时可以进行管理操作.
推荐操作
- 启动所有的组件。
验证
访问 wordpress 组件的对外服务地址,即可进入 wordpress 的配置页面,开始你的建站之旅。
管理组件 Kubernetes 属性
参考文档 kubernetes属性 了解目前 Rainbond 所支持的多种规格定义的配置方式。
管理应用中的k8s资源
参考文档 k8s资源操作 了解如何管理非 Workload 类型的资源。