一、簡介
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、前端界面訪問