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

网站怎么做才可以做评价/seoyoon

网站怎么做才可以做评价,seoyoon,合肥大型网站设计公,福建省网站备案用户注销原文链接:https://juejin.cn/post/7064389514470359053 在本篇文章中,将讲解使用jenkins帮助我们监听git仓库的变化,一旦有新的push到master分支,jenkins服务则从gitee主动拉取项目代码,构建新镜像,然后删除…

原文链接:https://juejin.cn/post/7064389514470359053

在本篇文章中,将讲解使用jenkins帮助我们监听git仓库的变化,一旦有新的push到master分支,jenkins服务则从gitee主动拉取项目代码,构建新镜像,然后删除同名旧镜像和旧容器,部署新容器。

而对于开发者来说,你向远程仓库的master分支push了新的代码之后,就可以马上访问url看到最新的项目运行结果,一切都将由jenkins帮你完成(只要事先配置好jenkins工作流程)

1.Jenkins安装

这里先给出jerkins的中文文档:www.jenkins.io/zh/doc/tuto…,你可以选择将jenkins服务直接安装到服务器上,也可以选择将jenkins服务通过容器运行在服务器上,这里我选择后者,点击上面的链接,就能跟着使用docker运行jinkins服务。

核心是下面这个运行docker容器的shell,关于这些参数的作用我前一篇文章已经讲过,如果不太清楚可以回过去结合着一起看。

docker run \-d \--rm \-u root \-p 8080:8080 \-v jenkins-data:/var/jenkins_home \-v /var/run/docker.sock:/var/run/docker.sock \-v "$HOME":/home \jenkinsci/blueocean

登录

运行jenkins容器之后,访问服务器ip:8080就能跳转到jenkins登录页面,第一次会让你输入一个密钥,这个在服务器运行Jenkins容器的时候控制台上就会显示(如果没有加上-d参数)。

在这里插入图片描述

或者输入下面的命令查看jenkins的密钥

cat /var/lib/jenkins/secrets/initialAdminPassword

填入密钥之后就会跳转至jerkins页面,首次登录它会提示你安装推荐的插件,点击即可。然后会引导你创建一个登录jerkins的用户,输入用户名,密码和邮箱等信息完成创建,之后访问服务器ip:8080就会提示你输入用户名和密码进行登录jenkins。

在这里插入图片描述

2.新建任务

点击左侧新建任务,输入你的任务名称,如wood-app-backend,然后选择构建自由风格的项目

在这里插入图片描述

然后会跳转至Jenkins项目配置区,选择源码管理项,Git选项,输入你Git仓库的地址,然后在Credentials处添加你Git仓库的用户名和密码,并且选择监听master分支(默认就是)

在这里插入图片描述

我们需要的效果是一旦git仓库发生变化就要自动构建镜像,并且部署新的镜像容器,所以在构建触发器项下选择轮询SCM,使用corn表达式控制Jenkins监听git仓库的频率为每分钟一次

在这里插入图片描述

下面是最核心的操作,jenkins要做的事我们已经知道了,那jerkins怎么知道呢?需要通过shell脚本指定,这里的shell就是Jenkins在监听到git仓库的master分支发生变化时要做的事情,包括删除已创建的容器(因为端口被旧容器占用,需要强制删除),构建新的镜像,运行新的容器

在这里插入图片描述

if docker ps -a|grep -i wood-app-backend;thendocker rm -f wood-app-backend
fi
#删除已建的容器,防止容器名,端口冲突
sleep 1
docker build -t baize1998/wood-app-backend:latest .    #根据dockerfile生成镜像
sleep 1
docker run -d -p 5000:5000 --name wood-app-backend baize1998/wood-app-backend:latest    #运行镜像生成容器

删除旧镜像

上面的shell命令中有删除旧容器的命令,但是没有删除旧镜像的命令(每次构建同名新镜像,旧的镜像就会变成none,但是依旧占据空间,需要回收)

在这里插入图片描述

但是直接在shell中编写删除镜像的命令在回收时可能会发生错误,所以额外创建一个定时任务去回收这些旧的镜像,这里指定清理镜像的任务的执行频率是每天的凌晨一点钟(可以自行控制)

在这里插入图片描述

shell脚本用于判断是否存在<none>状态的镜像,并对它们进行回收

echo ---------------Clear-Images...------------------
clearImagesList=$(docker images -f "dangling=true" -q)
if [ ! -n "$clearImagesList" ]; then
echo "no images need  clean up."
else
docker rmi $(docker images -f "dangling=true" -q)
echo "clear success."
fi

3.测试CI/CD

CI–持续集成(一旦push之后,新的镜像会构建),CD–持续部署(一旦push之后,新的容器会依据新的镜像运行,提供最新的服务),下面修改我们的项目接口,然后push到远程仓库的master分支
在这里插入图片描述

一分钟后,访问服务器ip:5000看到jenkins已经完成项目镜像构建以及新项目容器的运行,提供了最新的服务,之后便可以进行敏捷的开发了!

在这里插入图片描述

4.结束语

这篇文章讲述的使用Jenkins是比较取巧的,使用corn每分钟监听一次git仓库的变化达到这种细粒度的CI/CD效果,当然这只是jenkins功能的冰山一角,具体jenkins部署阶段还可以细分为构建、测试、部署等,也可以针对不同的推送命令配置不同的应答行为,每个阶段也可以指定执行各种脚本,这个就要学习Jenkins的pipeline机制,通过流水线的方式指定更详细和规范的CI/CD流程,不过到目前为止,学校里项目的开发维护功能也勉强够用了~

http://www.lbrq.cn/news/945433.html

相关文章:

  • 备案时填写 网站内容/网络推广软文范文
  • 建站行业严重产能过剩/微博推广平台
  • 网站做可信认证多少钱/网站排名软件
  • 顺义做网站的公司/产品市场营销策划方案
  • 有什么网站专门做美食的吗/seo收费还是免费
  • 左权网站建设/seo教程优化
  • 做微信商城网站/郑州seo方案
  • 网站公司怎么做运营/三叶草gy5987
  • 学怎么做建筑标书哪个网站/自动外链工具
  • 给企业做网站挣钱吗/seo网站优化推广费用
  • 济南市城乡建设委员会网站电话/seo搜索优化待遇
  • 日照市建设局网站/网络推广员岗位职责
  • wordpress分类目录添加报错_标签不能添加/东莞seo整站优化
  • 怎么用wordpress做网站/百度网首页登录入口
  • 磁力链/四川百度推广和seo优化
  • 常州个人网站建设/刚刚北京传来重大消息
  • 哪有做网站的/百度热搜关键词
  • 宜兴网站开发/郑州粒米seo顾问
  • 山东做网站建设的好公司排名/微信公众号推广软文案例
  • 石家庄建站模板厂家/谷歌google下载
  • 网站建设需要在网络上如何实现/台州网站优化公司
  • 河南省住房和城乡建设厅网站/宁波优化网站哪家好
  • 云主机 怎么做网站/制作网页的网站
  • 苏州网络销售公司/长沙靠谱的关键词优化
  • 杭州高端定制网站/seo优化多少钱
  • 创意生日礼物定制/seo自动工具
  • 永康网站建设/广西seo经理
  • 自己做网站做那种类型/厦门站长优化工具
  • 如何在阿里巴巴建设网站/晚上国网app
  • java官方网站开发/seo云优化如何
  • 三防平板搭载2D扫描头:工业数据采集的革新利器
  • 【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts) 视频教程 - 热词评论查询功能实现
  • which soffice soffice not found
  • [linux]Haproxy七层代理
  • Photon v0.3.0 基于Aria2免费开源轻量级多线程不限速下载器
  • 《剑指offer》-数据结构篇-链表