k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务

这篇具有很好参考价值的文章主要介绍了k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、准备环境

前提是我们在自己电脑上模拟整个流程。
假设我们需要搭建一主一从的k8s集群,那就需要安装VMvare和Centos7(点击我查看安装文档),
然后就可以在这两个虚拟机上搭建k8s集群了(点击我查看安装文档),
一个最简单的devops流程已经在标题中写明了,
其中可以搭建gitlab(点击我查看安装文档),也可以使用gitee或者github进行测试,我本次使用gitee进行测试,
然后jenkins作为全流程大总管(点击我查看安装文档),
jenkins首先将从git仓库拉取代码到虚拟机,这个时候我们需要将代码打包成jar包,
此时就需要使用maven仓库的支持(点击我查看安装文档),
然后需要对打好的jar包打docker镜像(点击我查看安装文档),
之后就需要把docker镜像推送到harbor仓库(点击我查看安装文档),
然后我们远程调用k8s命令来创建应用

二、实践上述流程

1、准备代码,并且上传到gitee

我的代码在gitee上的test_local_maven分支下,这里我把项目直接提供给大家

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

百度网盘下载信息如下:

链接:https://pan.baidu.com/s/1ra1B3pl2NyVg5PIb4hOiRw?pwd=030o

提取码:030o

2、在jenkins中创建多分支流水线

点击新建任务:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

填写任务名称:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

选择多分支流水线,点击确定按钮:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee
填写名称和描述:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

选择Git为分支源:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee
把gitee中的仓库地址填入其中:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

然后添加用户信息,用来下载gitee中的代码:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

填写账号和密码等信息:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

之后选择刚刚创建的账号信息:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

根据情况查看是否需要调整Jenkinsfile路径:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee
点击保存之后就可以构建多分支流水线了,由于本次我只使用一个分支test_local_maven,所以我把其他分支给停止了

3、配置maven工具

如果不出意外,整体流程在构建jar包的时候会报错,我们看一下项目中的Jenkinsfile文件内容:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee
maven3这个名称不是随意取得,而是在Jenkinsfile中配置出来的,那跟随我来配置一下吧,在首页上点击系统管理,如下:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

之后点击全局工具配置,如下:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

添加maven配置文件的位置:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

然后鼠标往下滑,在页面最下方可以看到如下内容:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

点击Maven安装按钮之后,配置maven相关信息:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

上图配置的别名maven3就是Jenkinsfile中的maven工具名称了,如下:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

这个时候就可以尝试构建了

4、配置k8s主节点所在虚拟机连接信息

首先点击Jenkins中的系统管理:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

然后点击系统配置:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

把鼠标滑到页面下方,找到Publish over SSH,然后在下面SSH Servers中配置k8s主节点所在虚拟机连接信息:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

我展示一下我的配置信息:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

现在看下高级中的密码配置:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

然后看看是否需要更改默认的端口(默认端口:22)配置,然后测试一下虚拟机连接情况:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

我们先讲下这个位置将会影响哪里,继续看项目中的Jenkinsfile:

k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

这样来说,我们可以把yaml文件从jenkins所在虚拟机发送到k8s主节点所在虚拟机了,然后在k8s主节点上执行kubectl命令就可以创建服务了

5、解读Jenkinsfile

Jenkinsfile文件是整体灵魂文章来源地址https://www.toymoban.com/news/detail-787608.html

  • 可以通过maven构建项目
    k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee
  • 打docker镜像,并且往harbor仓库推送镜像
    k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee
  • 发送yaml文件到k8s主机所在虚拟机,然后通过kubectl命令构建服务
    k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务,云原生,kubernetes,jenkins,gitee

到了这里,关于k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • K8S部署jenkins

    K8S部署jenkins

    NFS服务器:1xx.xxx.xxx.229 K8Smaster:1xx.xxx.xxx.221 k8Snode1: 1xx.xxx.xxx.228 (宿主机) 需要将jenkins的配置目录挂载到NFS中,如果没安装可以参考之前的文档。 注意:jenkins2.372默认安装jdk11版本,没有mvn和jdk8,如果有需求就需要将宿主机的mvn、jdk、环境变量、都挂载到容器内。 jenki

    2024年02月14日
    浏览(7)
  • k8s 部署Jenkins项目

    k8s 部署Jenkins项目

    要求:当前集群配置了storageClass,并已指定默认的storageClass,一般情况下,创建的storageClass即为默认类 指定默认storageClass的方式 1.1 部署helm 1.2 部署jenkins 1.3 检查 jenkins 1.4 配置访问 3.1 准备ruoyi数据 3.2 准备k8s证书 3.3 准备maven配置文件 3.4 配置钉钉插件 在系统管理的下方有未

    2024年01月21日
    浏览(22)
  • jenkins部署K8S应用

    jenkins部署K8S应用

      PS:这种方式是jenkins独立,然后slave已容器方式运行,master是独立出来的,减少运维成本,还能提高效率。 如果使用master部署需要把master加入k8s集群 jenkins安装不赘述 在k8s-master节点上生成对应的证书 在jenkins里添加凭据 凭据类型选Certificate 上传cert.pfx,输入刚才设置的密码

    2024年02月04日
    浏览(12)
  • Jenkins使用k8s部署应用

    Jenkins使用k8s部署应用

    1、jenkins在k8s内部署(请参考其他人的文章) 2、jenkins安装kubenents相关插件 3、配置k8s云         非常重要,目的是实现jenkins可以远程调用k8s进行部署,并可实现安装jenkins-slave进行构建。使得不再依赖jenkins单机能力进行构建,比较适合一定规模的公司。  插件安装后,打开

    2024年02月15日
    浏览(15)
  • 【Go】K8s 管理系统项目[Jenkins Pipeline K8s环境–应用部署]

    【Go】K8s 管理系统项目[Jenkins Pipeline K8s环境–应用部署]

    考虑到实际工作中前后端可能是不同的同学完成,一般Api部分完成后改动会比较小,web部分改动会比较频繁.于是将api和web分了2个pipeline实现 docker目录存放镜像构建相关文件 k8s-plantform-api 存放api部分代码 Jenkinsfile用作pipeline配置 yaml用作生成k8s下k8s-plantform-api相关资源 1.1.1 docker目

    2023年04月08日
    浏览(15)
  • k8s的jenkins部署java项目到k8s集群cicd持续集成

    k8s的jenkins部署java项目到k8s集群cicd持续集成

    k8s1.16.0-k8s的jenkins部署java项目到k8s集群cicd(ci成,cd手动部署的) 注意: 本文档只是实现了ci,cd是通过ci生成的镜像,再手工再k8s-master执行的部署(只因pod部署的jenkins连接k8s的认证不知怎么操作,若jenkins是单独部署在k8s-master机器上,能直接在master执行kubectl命令就没这个问题了

    2024年02月03日
    浏览(16)
  • 【K8S专题】八、Jenkins 自动打包部署配置

    【K8S专题】八、Jenkins 自动打包部署配置

      项目部署有多种方式,从最原始的可运行 jar 包直接部署到 JDK 环境下运行,到将可运行的 jar 包放到 docker 容器中运行,再到现在比较流行的把可运行的 jar 包和 docker 放到 k8s 的 pod 环境中运行。每一种新的部署方式都是对原有部署方式的改进和优化,这里不着重介绍每种

    2024年02月15日
    浏览(8)
  • K8s集群部署最新Jenkins 2.387.1

    K8s集群部署最新Jenkins 2.387.1

    概述 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。在Devops时代Jenkins有着不可缺失地位,也体现了Jenkins的亮点,废话不多说,我们进入在k8s环境下安装最新的J

    2024年02月13日
    浏览(10)
  • Jenkins构建项目并部署到K8S实践

    Jenkins构建项目并部署到K8S实践

    本次实践使用gitee上的开源项目悟空CRM9.0进行构建并部署到k8S中 悟空CRM9.0项目简介: 悟空CRM-基于jfinal+vue+ElementUI的前后端分离CRM系统。 项目gitee地址:https://gitee.com/wukongcrm/72crm-java.git 软件 版本 IP 备注 K8S 1.26.x 192.168.1.124 192.168.1.124为K8S集群master01节点IP地址 Harbor 2.6.2 192.168.1.

    2024年02月20日
    浏览(8)
  • DevOps搭建(十六)-Jenkins+K8s部署详细步骤

    DevOps搭建(十六)-Jenkins+K8s部署详细步骤

    ​ 要想从Harbor仓库中拉取镜像,首先要往主机和从机的daemon.json文件中添加Harbor的地址信息 \\\"insecure-registries\\\":[\\\"192.168.88.125:80\\\"],别忘了80端口 添加完之后,重启下docker 要拉取镜像,需要Harbor登录进行拉取,到Kuboard控制台对应的命名空间找到 密文 菜单,点击 创建Secret 。 填写

    2024年01月16日
    浏览(7)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包