当前位置: 首页 > news >正文

东莞网站建设(信科网络)国内最新重大新闻

东莞网站建设(信科网络),国内最新重大新闻,无代码编程软件,网页广告屏蔽文章目录 前言一、jenkins配置1.1 jenkins配置git1.2 jenkins 配置maven1.3 jenkins配置java 二、jenkins流水线配置2.1.新增项目2.2 springboot项目配置git仓库2.3 springboot项目配置maven打包2.4 系统配置 ssh到hadoop1配置#xff0c;也就是k8s的master节点2.6 springboot… 文章目录 前言一、jenkins配置1.1 jenkins配置git1.2 jenkins 配置maven1.3 jenkins配置java 二、jenkins流水线配置2.1.新增项目2.2 springboot项目配置git仓库2.3 springboot项目配置maven打包2.4 系统配置 ssh到hadoop1配置也就是k8s的master节点2.6 springboot项目配置拷贝jar包到远端2.5 springboot项目配置打包完成后的执行脚本2.6 验证 总结 前言 前面已经完成了k8s集群的部署现在尝试jenkins自动集成到k8s集群。jenkins搭建可以参考jenkins搭建 一、jenkins配置 前面已经完成了jenkins的搭建但是还没有集成gitmavenjava这里做下配置。 1.1 jenkins配置git linux安装git如下 yum install git如下图的路径配置里如果没有git去插件安装处安装一下git插件即可 配置git如果没有git去插件管理安装一下就行 /usr/bin/git1.2 jenkins 配置maven 自己下载maven安装包解压到你自己的安装目录修改conf文件 mirroridaliyunmaven/idmirrorOf*/mirrorOfname阿里云公共仓库/nameurlhttps://maven.aliyun.com/repository/public/url /mirror export MAVEN_HOME/opt/*/maven3.6/apache-maven-3.6.3 export PATHMAVEN_HOME/bin:MAVEN_HOME/bin:PATH #刷新配置 source /etc/profile检查是否安装成功 mvn help:system如果出现下载文件则maven安装成功了接下来去jenkins配置maven如图所示我的安装路径如下 /root/tools/apache-maven-3.6.3/conf/settings.xml配置maven安装路径如图 1.3 jenkins配置java /root/tools/jdk/jdk1.8.0_144二、jenkins流水线配置 2.1.新增项目 2.2 springboot项目配置git仓库 这里我使用的国内免费的gittee作为仓库。 先到linux服务器上生成公钥私钥用来联通linux和git ssh-keygen -t rsa -C your_emailyouremail.com然后两次回车即可cd ~/.ssh 目录下拷贝公钥到gitee公钥管理处 公钥存放的文件为id_rsa.pub 私钥存放的文件为id_rsa 然后到jenkins配置证书点击添加证书 这里选择的是ssh username with private key username和id随便填下面框框里面填的内容为刚刚生成的私钥 id_rsa里的所有内容。 完成后会报错如下 Failed to connect to repository : Command /usr/bin/git ls-remote -h https://gitee.com/jiangbingsong/k8s-demo.git HEAD returned status code 128: stdout: stderr: fatal: Authentication failed for https://gitee.com/jiangbingsong/k8s-demo.git/可能原因 1.你的秘钥配置填写错误检查一下就行 2.gittee仓库的权限不是公开的把它配置成公开或者设置仓库秘钥重新配置。 仓库秘钥配置的地方如下图我配置了好几次都失败了提示成功却没有秘钥出来 然后修改为仓库公开了在基本信息下面设置仓库公开即可。 2.3 springboot项目配置maven打包 clean install这里的pom路径为相对路径根据你仓库地址到pom.xml文件的路径例如我的仓库下载下来的代码pom文件路径就是根路径下的,pom.xml 2.4 系统配置 ssh到hadoop1配置也就是k8s的master节点 Dashboard-Manage Jenkins-Systempublish over ssh 这里配置 如果没有该选项则去插件配置里面搜索这个插件安装重启一下就好了。 Passphrase 登录主机的密码 name 主机名可以随便填hostname 主机ipusername 登录用户名Remote Directory 登录到远端的地址。 编辑完成后点下测试返回sucess配置成功。 2.6 springboot项目配置拷贝jar包到远端 配置Send files or execute commands over SSH 拷贝生成的jar到远端。 target/demo-0.0.1-SNAPSHOT.jar target /root/dockerimage pwd echo “传输完成”source files jar包生成的相对目录 整个工作空间地址为 /var/lib/jenkins/workspace/springboot maven在springboot下生成target文件夹从这里开始算Remove prefix 前缀 要去掉target否则会连整个文件夹一起拷贝到远端我们只是想拷贝jar包过去所以去掉Remote directory 拷贝到远端的目录 2.5 springboot项目配置打包完成后的执行脚本 新增远端执行指令选择刚刚系统配置的远端主机 这个红色的警告不用管这个是你jenkins要带到远端的文件我这里不需要带过去就不配置了。 Remote directory 远端登录的目录Exec command 执行的指令 cd /root/dockerimage ./start.sh ./imagerm.sh这里要执行的命令我写成了shell脚本去执行脚本如下 start.sh如下 #!/bin/sh # # 镜像仓库地址 DOCKER_REPOSITORIES192.168.184.129:5000 # 项目名称 APP_NAMEspringbootdemo # 初始化版本号 init_version0.0.1 #下一个版本号 nextPlatformTags #登录到私有仓库 # 处理私服docker镜像版本号 旧的版本号 platformRepoTags$(curl -u jiangbingsong:123456 ${DOCKER_REPOSITORIES}/v2/${APP_NAME}/tags/list |jq .tags |awk -F, {print $NF}|sed s/[][]// |sed /^$/d|sed s/\//g) echo platformRepoTags: $platformRepoTags #去掉空格 platformRepoTags${platformRepoTags// /} if [ $platformRepoTags null ]; then nextPlatformTags${init_version} else OLD_IFS$IFS IFS. arryPlatTags($platformRepoTags) IFS$OLD_IFS # 处理私服docker镜像版本号 升级版本 nextPlatformTags${arryPlatTags[0]}.${arryPlatTags[1]}.$[arryPlatTags[2]1] fi # 构建的命令 APP_NAME_BUILD${DOCKER_REPOSITORIES}/${APP_NAME}:${nextPlatformTags} . echo 构建的命令 build -t ${APP_NAME_BUILD} docker build -t ${APP_NAME_BUILD} #push到镜像仓库 PUSH_APP_NAME${DOCKER_REPOSITORIES}/${APP_NAME}:${nextPlatformTags} #echo 提交到私有镜像仓库命令 docker push ${PUSH_APP_NAME} docker login ${DOCKER_REPOSITORIES} -u jiangbingsong -p 123456 docker push ${PUSH_APP_NAME} #docker logout kubectl apply -f springbootDeployment.yaml echo PUSH_APP_NAME: ${PUSH_APP_NAME} kubectl set image -nwebservice deployment/springbootdeploy $APP_NAME${PUSH_APP_NAME} echo success !解释下这里主要做的事有生成docker镜像查询仓库内的镜像版本号自动升级版本号使用版本号进行升级然后推送到仓库最后设置deployment的镜像镜像更新。 springbootdeploy 为你depoyment的名字 springbootDeployment.yaml 和dockerfile文章内容前面的文章有可以找找。 同时springbootDeployment.yaml做以下修改。 清理镜像脚本imagerm.sh如下 这个内容不用改直接用就行项目镜像只保留最新的2个版本 #!/bin/bash# 获取所有镜像列表并按照创建时间排序 image_list$(docker image ls --format {{.Repository}}:{{.Tag}}|{{.CreatedAt}} | sort -t | -k2,2)# 获取所有镜像名 image_names$(echo $image_list | awk -F : {print $1} | uniq)# 遍历每个镜像名 for image_name in $image_names; do# 获取特定镜像名的镜像列表filtered_images$(echo $image_list | awk -F : -v name$image_name $1 name)# 获取镜像数量image_count$(echo $filtered_images | wc -l)# 如果镜像数量超过3个则删除旧的镜像只保留最近的两个if [ $image_count -gt 3 ]; thenimages_to_delete$((image_count - 2))images_to_delete_list$(echo $filtered_images | head -n $images_to_delete | cut -d | -f 1)for image in $images_to_delete_list; dodocker image rm $imagedonefi done2.6 验证 这里我的服务暴露的方式是nodeport也可以用ingress配置成域名登录比较麻烦前面的教程也有弄过这里这是为了集成jenkins就不搞这么多了。 kubectl get svc --all-namespaceshttp://192.168.184.129:30467/hello 返回了200验证成功。 总结 1.jenkins集成可以先不直接集成k8s可以先用jenkins集成java -jar的方式启动这样能先排除jenkins产生的问题我这里就不展示过程了就直接写成了最后的结果。 2.springbootDeployment.yaml文件的镜像拉取设置要修改一下才能拉取到。
http://www.yutouwan.com/news/90526/

相关文章:

  • 四川建设信息共享网站新媒体营销策略都有哪些
  • 廊坊 网站加盟网络营销推广公司
  • 无锡网站建设企业设计网页布局的常用方法有哪三种
  • 企业网站模板素材电子商务公司怎么赚钱
  • 个人网站主机的配置黄页88推广多少钱
  • 南昌建设网站公司物流网络的概念
  • 惠来做网站wordpress js优化
  • 设计素材网站版权关键词网络推广
  • 免费制造网站网站seo建设方案
  • 有哪些网站可以推广做网站维护累吗
  • 网站建制作怎么查网站注册时间
  • 网站建设和网络推广服务公司wordpress ck-video
  • 专门做稀有产品的网站西安个人做网站
  • 网站建设捌金手指花总十七png素材网
  • 房产网站编辑如何做找网站推广
  • 免费最好网站建设昆山苏州网站建设
  • 做网站后台需要写代码吗wordpress 缓存文件夹
  • php在网站开发中的应用汉中建设工程招标新闻中心
  • 做网站公司哪家公司好看手机的网站叫什么
  • 网页游戏网站哪个最好证书兼职的正规平台哪里有
  • 网站建设企业 熊掌号做网站应该问客户什么需求
  • 域名网站可以做多个品牌产品吗桔子seo
  • 阿里巴巴网站做方案网站热点关键词
  • 北京做网站男生工资外贸seo网站大全
  • 做网站签合同个人网站做联盟营销
  • 网页制作网站开发中国网站备案信息查询
  • 网站建设的作业模板宽带多少钱一个月
  • 教育培训网站制作检察院网站建设标书
  • 贵州省住房和城乡建设部官方网站wordpress 没有上级目录的写权限
  • 新媒体包不包括公司网站的建设WordPress分享到微博代码