使用流水线插件实现持续集成、持续部署
· 阅读需 8 分钟
流水线插件 是基于 Rainbond 插件体系 扩展实现,通过插件化的方式,可以实现对 Rainbond 构建体系的扩展。该插件由社区合作伙伴 拓维信息 参与开发并贡献,底层是基于 GitLab CI/CD 实现。
流水线构建与 Rainbond 源码构建的区别是:
- Rainbond 源码构建:使用简单,固定的构建模式,用户只需提供源代码,但不是很灵活。
- 流水线构建:自定义构建步骤,使用更加灵活。
本文将介绍使用流水线插件部署 RuoYi SpringBoot 项目,并实现提交代码后自动构建、自动部署。
安装 GitLab 和 Runner
流 水线插件是基于 GitLab 实现,所以需要依赖 GitLab 和 GitLab Runner,如果已有则可跳过此步。
通过 Rainbond 开源应用商店部署 GitLab 和 Runner,进入到 平台管理 -> 应用市场 -> 开源应用商店 中分别搜索 GitLab
和 GitLab-runner
,选择版本进行安装,分别安装到同一个应用内。
部署完成后,访问 GitLab 默认的域名进行用户注册。然后关闭 GitLab 默认的 AutoDevOps:Admin -> Settings -> CI/CD -> Continuous Integration and Deployment
取消勾选 Default to Auto DevOps pipeline for all projects
。
注册 Runner
GitLab 和 Runner 都部署完成后,需要将 Runner 注册到 GitLab 中。
进组 Runner 组件内 -> Web 终端,执行以下命令进行注册:
<URL>
为 GitLab 访问地址<TOKEN>
在 GitLab 的Admin -> Runners
获取Registration token
<TAG>
自定义 Runner 的标签。
gitlab-runner register \
--non-interactive \
--executor "docker" \
--docker-image alpine:latest \
--url "<URL>" \
--registration-token "<TOKEN>" \
--description "docker-runner" \
--tag-list "<TAG>" \
--run-untagged="true" \
--locked="false" \
--docker-volumes /var/run/docker.sock:/var/run/docker.sock \
--docker-volumes /root/.m2/repository \
--docker-privileged="true" \
--access-level="not_protected" \
--docker-pull-policy="if-not-present"
注册完成后,可以在Admin -> Runners
页面中看到如下图,Status
为 online
则正常。