本文介绍如何在 Zadig 上快速搭建 Spring Boot 项目。Spring Boot 是构建 Java 后端应用程序的一种非常流行的框架,本文以 voting-app 案例作为实践,演示从 Code 到 Ship 的整个过程。
本案例所用代码 fork 自 zadig 仓库,voting-app 项目包括 5 个微服务(redis、db、worker、result、vote),其中 worker 服务以及其依赖的 redis、db(Postgres) 服务使用 Spring Boot 框架,细节信息如下:
YAML
worker
Dockerfile
新建项目
-> 填写项目名称 spring-boot-demo
-> 选择 K8s YAML 项目
-> 点击立即创建
-> 点击下一步
。Zadig 提供三种方式管理服务配置:
这里,我们使用从代码库同步的方式。点击从代码库同步
按钮 -> 选择仓库信息 -> 选择文件目录 examples
-> voting-app
-> freestyle-k8s-specifications
-> 点击同步
按钮即可。
接下来为服务配置构建,以便于后续对服务进行持续交付,具体操作步骤:选择 worker
服务 -> 点击添加构建
-> 填写代码信息和构建脚本后保存。
构建配置说明:
cd $WORKSPACE/zadig/examples/voting-app/worker
docker build -t $IMAGE -f Dockerfile.j .
docker push $IMAGE
点击向导的「下一步」。这时,Zadig 会根据你的配置,创建两套包括上述微服务的环境以及相关工作流,如下图所示。
点击「创建环境」,完成后点击下一步完成向导流程。
至此,一个包含 5 个微服务的项目、2 套环境、3 条工作流已经产生,项目概览如下。
使用工作流对 worker 服务进行部署更新,以 dev 环境为例操作步骤如下。
spring-boot-demo-workflow-dev
工作流 -> 选择 worker 服务,点击「执行」运行工作流。添加触发器,使得代码 Push commit、Pull Request、Push tag 都能自动触发服务的重新构建和部署。
spring-boot-demo-dev
工作流