一、简介
1、该章节基于jenkins、Harbor、pipeline、k8s来做发布,如对这些不熟悉,请按以下进入学习
2、jenkins学习地址:https://www.cnblogs.com/lvlinguang/p/15163691.html
3、Harbor学习地址:https://www.cnblogs.com/lvlinguang/p/15500171.html
4、pipeline学习地址:https://www.cnblogs.com/lvlinguang/p/15512349.html
5、k8s学习地址:https://www.cnblogs.com/lvlinguang/p/15682696.html
6、jenkins+docker项目发布 https://www.cnblogs.com/lvlinguang/p/15539716.html
二、新建docker-build工程
1、目录结构如下
2、目录介绍
- config:docker打包、k3s部署的相关文件
- build: 打包需要用的文件
- default.conf:前端nginx文件
- Dockerfile-front:前端dockerfile文件
- Dockerfile-back:后端dockerfile文件
- k3s: k3s发布文件
- deployment-back.yaml:后端deployment文件
- service-back.yaml:后端service文件
- deployment-front.yaml:前端deployment文件
- service-front.yaml:前端service文件
- build: 打包需要用的文件
- config.json:打包需要用到的数据
- scripts:groovy脚本
- common_util.groovy:common工具类
- common_var.groovy:环境变量
- docker_backend_build.groovy:后端打包类
- docker_frontend_build.groovy:前端打包类
- k3s_backend_publish.groovy:k3s后端发布类
- k3s_frontend_publish.groovy:k3s前端发布类
- Jenkinsfile:jenkins文件
三、项目部署
1、原码地址,前后端使用master-k3s分支,与master分支相比少了Dockerfile文件
- 前端源码:https://gitee.com/lvlinguang/rapid-demo-web
- 后端源码:https://gitee.com/lvlinguang/rapid-demo-back
- docker-build:https://gitee.com/lvlinguang/docker-build
2、新建jenkins项目
3、项目打包并发布
4、验证是否发布成功
- 查看Harbor上是否有docker镜像了
- docker images 验证服务器上是否有镜像
- kubectl get pod 查看pod是否启动
- docker ps -a 查看docker是否启动
四、访问测试
1、后端接口访问
2、前端界面访问