jenkins+docker+k8s项目发布
一、简介
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、前端界面访问
jenkins+docker+k8s项目发布的更多相关文章
- 第四十四章 微服务CICD(6)- gitlab + jenkins + docker + k8s
总体流程: 在开发机开发代码后提交到gitlab 之后通过webhook插件触发jenkins进行构建,jenkins将代码打成docker镜像,push到docker-registry 之后将在k8 ...
- gitlab + jenkins + docker + k8s
总体流程: 在开发机开发代码后提交到gitlab 之后通过webhook插件触发jenkins进行构建,jenkins将代码打成docker镜像,push到docker-registry 之后将在k8 ...
- Ubuntu中安装jenkins+docker,实现项目部署
本人对于linux系统是个小白,恰逢公司新框架需要docker+jenkins部署项目,所以通过同事口述+一顿乱查,终于实现在虚拟机上搭建的ubuntu系统中 实现jenkins +docker 自动 ...
- 实战项目部署应用到kubernetes流程(jenkins+docker+k8s)
说明 通过jenkins构建java应用程序发布到k8s集群中 本文已一个大数据的java项目来演示构建部署过程 支持发布和回滚 支持一套模板应用不同项目 k8s基础准备 创建项目名称空间 [root ...
- 自动化集成:Pipeline整合Docker+K8S
前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译.打包.镜像构建.部署等操作:本篇文章主要描述流水线集成K8S用法. 一.背景描述 分布式服务的部署 ...
- Jenkins+Git+Docker+K8s部署
准备工作 Jenkins已安装 Docker和K8s部署运行成功 代码管理工具使用Git 最近公司项目使用Jenkins+Git+Docker+K8s进行持续化构建部署,这里笔者整理了一下构建部署的相 ...
- 三万字无坑搭建基于Docker+K8S+GitLab/SVN+Jenkins+Harbor持续集成交付环境
写在前面 最近在 K8S 1.18.2 版本的集群上搭建DevOps环境,期间遇到了各种坑.目前,搭建环境的过程中出现的各种坑均已被填平,特此记录,并分享给大家! 文章和搭建环境所需要的yml文件已收 ...
- 使用Docker搭建Jenkins+Docker持续集成环境(自动化构建发布部署)
本文介绍如何通过Jenkins的docker镜像从零开始构建一个基于docker镜像的持续集成环境,包含自动化构建.发布到仓库\并部署上线. 0. 前置条件 服务器安装docker,并启动docker ...
- jenkins+maven+docker集成java发布(二)#远程发布
jenkins+maven+docker集成java发布(一)中写了在Jenkins服务器自动部署业务,那需要将java项目部署到其他服务器怎么操作 这里需要依赖插件Publish Over SSH ...
随机推荐
- 高并发异步解耦利器:RocketMQ究竟强在哪里?
上篇文章消息队列那么多,为什么建议深入了解下RabbitMQ?我们讲到了消息队列的发展史: 并且详细介绍了RabbitMQ,其功能也是挺强大的,那么,为啥又要搞一个RocketMQ出来呢?是重复造轮子 ...
- Web Api 宿主的搭建
首先我们要清楚一个概念,宿主.宿主是什么意思?先从了解一下Hosting开始吧! 有关Hosting的基础知识 Hosting是一个非常重要,但又很难翻译成中文的概念.翻译成:寄宿,大概能勉强地传达它 ...
- Codeforces 605D - Board Game(树状数组套 set)
Codeforces 题目传送门 & 洛谷题目传送门 事实上是一道非常容易的题 很容易想到如果 \(c_i\geq a_j\) 且 \(d_i\geq b_j\) 就连一条 \(i\to j\ ...
- 洛谷 P4497 - [WC2011]拼点游戏(数据结构综合)
题面传送门 神仙 DS. 首先关于第一问可以轻松想到一个 DP,\(dp_{i,j}\) 表示考虑到第 \(i\) 位,这一位奇偶性为 \(j\) 的最大权值,时间复杂度 \(n^2q\),可以拿到 ...
- pip 与 conda
pip 与 conda 简介 pip 是接触 python 后最早认识的包管理工具.通过使用 pip 能够自动下载和解决不同 python 模块的依赖问题,使 python 的配置过程变得简单. 与 ...
- ggplot 画堆叠柱状图
1. 关注下方公众号可获得更多精彩
- Spark3学习入门【基于Java】
Spark 是离线数据处理的一种大数据技术,和Flick相比数据处理要延后,因为Flick是实时数据处理,而Spark需要先读取数据到内存. Spark的库是基于Scala写的,虽然Scala也是运行 ...
- hbase参数调优
@ 目录 HBase参数调优 hbase.regionserver.handler.count hbase.hregion.max.filesize hbase.hregion.majorcompac ...
- A Child's History of England.15
And indeed it did. For, the great army landing from the great fleet, near Exeter, went forward, layi ...
- 轻松理解webpack热更新原理
一.前言 - webpack热更新 Hot Module Replacement,简称HMR,无需完全刷新整个页面的同时,更新模块.HMR的好处,在日常开发工作中体会颇深:节省宝贵的开发时间.提升开发 ...

