kubevela和harbor自动CD部署

KubeVela简介

1
2
KubeVela 是一个开箱即用的现代化应用交付与管理平台,它使得应用在面向混合云环境中的交付更简单、快捷。
使用 KubeVela 的软件开发团队,可以按需使用云原生能力构建应用,随着团队规模的发展、业务场景的变化扩展其功能,一次构建应用,随处运行。

KubeVela安装

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
https://kubevela.io/zh/docs/install

# 安装条件
Kubernetes cluster >= v1.19 && <= v1.24

# 安装KubeVela命令行
curl -fsSl https://kubevela.net/script/install.sh | bash

# 安装KubeVela Core
$ vela install

# 开启dashboard
vela addon enable velaux

# 暴露端口对外访问
vela addon enable velaux serviceType=NodePort

# 默认密码
默认的用户名是admin,默认密码是 VelaUX12345

准备测试demo库

1
git clone https://gitlab.com/FogDong/KubeVela-GitOps-Demo-Code.git

制作镜像

1
2
3
4
5
cd KubeVela-GitOps-Demo-Code/
docker build -t test.key1024.cn/ocpsample/vela-demo:0.1 .

# 推送到harbor
docker push test.key1024.cn/ocpsample/vela-demo:0.1

创建应用

1
2
3
4
5
6
登录velaux,点击应用列表,点击新增应用
# 镜像处最后换成了域名,containerd对harbor一定要https所以这里改为了域名形式。

[root@master ~]# kubectl get pod -l app.oam.dev/name=vela-demo
NAME READY STATUS RESTARTS AGE
vela-demo-7fd9766848-rn2pz 1/1 Running 0 6m11s



  • 浏览器访问

创建触发器

  • 创建kubevela触发器
1
进入对应应用,属性 ,即可看到右下角触发器(默认会自动创建个,不需要可以删除掉)

  • 复制触发器webhook

  • harbor中添加此webhook

更新代码

1
2
3
cd KubeVela-GitOps-Demo-Code-master/src
vim App.vue
# 修改v:3.0.0,保存退出

重新构建镜像

1
2
3
4
# tag为0.2
docker build -t test.key1024.cn/ocpsample/vela-demo:0.2 .
# 推送镜像
docker push test.key1024.cn/ocpsample/vela-demo:0.2

检查触发情况

  • 镜像推送

  • 镜像触发webhooks

  • KubeVela更新版本

  • 浏览器验证v3.0版本

-------------本文结束感谢您的阅读-------------
原创技术分享,感谢您的支持。