jenkins
文章平均质量分 87
vinter-he
目前在一个创业型公司担任技术负责人,因为工作需要和个人爱好,接触了几种语言和些许架构知识,写的博客也多是记录和分享自己的工作和学习过程中的一些经验。以我的水平在平台上还算是个小学生,感谢在我前进路上帮过我的各位大牛,有不足之处,望大家不吝赐教。
展开
-
jenkins自动化部署应用到k8s(11):jenkins配置发送邮件通知
一 前言本来以为邮件服务比较简单就不记录了,但操作发现里面还是有不少坑,比如邮件发不出去了。排坑的过程就是理解插件作用的过程,理解了每一步的作用自然之道如何处理异常。二 jenkins配置邮件服务过程2.1 插件安装Email Extension Plugin插件,具体安装步骤可以看之前的文章,也可以自己百度。默认写到这里就已经都知道怎么安装插件了。2.2 系统配置邮件服务2.2.1 配置smftp server阿里云邮箱,配置比较简单。smtp固定值和我一样就可以,账号密码原创 2020-12-08 14:32:52 · 8414 阅读 · 0 评论 -
jenkins自动化部署应用到k8s(10):阻止git无提交的构建
当使用jenkins进行自动构建的时候,我们不能保证每次推送都不出问题,也不能保证我们没有点错构建导致重复构建,影响线上的问题,那么我们怎么避免这种问题呢。1.针对每次触发jenkins构建的commit,要增加审核流程和权限控制2.对于误点击构建按钮的情况,如果本次git的commitid是和上次构建一致的,就不在进行构建和更新镜像。直接拦截处理。如果仍然需要更新,可以使用更新readme文件或者其他非代码文件的方式推送触发构建。#拦截处理的代码if [ $GIT_PREVIOUS_SUCCESS原创 2020-12-08 13:55:08 · 5451 阅读 · 0 评论 -
jenkins自动化部署应用到k8s(9):docker中的jenkins怎么调用kubectl进行部署
jenkins中安装kubectl因为jenkins中没有kubectl工具,所以如果想要调用的话首先要在jenkins的容器中安装这个命令。有两种方式,第一种:是直接调用宿主机的kubectl第二种:是在内部安装。另外比较重要的就是kubeconfig怎么导入使用。直接调用宿主机的kubectl和之前的文章一样,把工具映射进来,或者在jenkins的docker中安装kubectl也可以,拷贝进去也可以。最终命令就变为docker run --name jenkins.原创 2020-11-24 10:17:51 · 8666 阅读 · 3 评论 -
jenkins自动化部署应用到k8s(8):构建和上传镜像
部署k8s参见我的k8s专栏,有很详细的步骤和描述。这里只讲上线的时候连接k8s和镜像替换。阅读本文需要的知识docker相关命令Dockerfile的编写shell命令基础部署思路我以前的思路是代码都是放在oss中,pod运行的时候会挂载oss到容器中进行项目代码处理,网站设置和nginx的启动。这样做符合当时我们快速处理上线的需求。但是对于长期的部署和回滚来说,增加了很多人工劳动力,比如需要先准备好代码,而不是直接从git仓库获取。过程不够自动化,完全抛弃了k8s的回滚等功能。新的部署思原创 2020-11-24 09:35:07 · 7194 阅读 · 0 评论 -
jenkins自动化部署应用到k8s(7):docker安装的jenkins调用docker命令
安装jenkins有两种方式,一种是直接安装在centos这类的linux实体机中,一种是docker安装。使用普通功能的时候差不不大,但是当要调用外部命令的时候,因为docker一般环境不健全会有很多坑需要踩。比如本文涉及的docker中运行docker命令。、应该以怎样的形式运行问题1:docker中是否可以运行docker答:可以,也就是docker in docker技术问题2:如果docker中不运行docker,是否可以执行docker命令。答:可以,把宿主机的docker.sock文原创 2020-11-20 14:19:58 · 7310 阅读 · 1 评论 -
jenkins自动化部署应用到k8s(6):配置jenkins项目_下
构建构建步骤:可以增加多个构建步骤,可以是下面图中红框标出的其中一种。我这里演示的是执行shell,当然也可以是invoke Ant(调用ant),这是一种java语言编写的构建工具,其功能和shell也类似,多了步骤依赖和一些其他功能,对于我们来说,哪种熟悉用那种就好。比如本文是准备打包好的应用放到docker中,并把镜像push到阿里云镜像中心,但是我们在这篇文章中不做详解,之后的文章中会详细描述我们在这期间遇到了什么问题。构建后操作构建后操作,就是对project构建完成后的.原创 2020-11-20 10:57:04 · 6312 阅读 · 0 评论 -
jenkins自动化部署应用到k8s(6):配置jenkins项目_上
创建项目创建一个自由风格的项目就可以,也是用的比较多的方式,包括配置项,我们不会一一详解,只会选择比较常用的部分讲解,其他的自己研究吧,手动狗头。1.General(基础配置)丢弃旧的构建其中可以选择保持的天数和保持的个数。因为服务器资源是有限的,有时候保存了太多的历史构建,会导致Jenkins速度变慢,磁盘占用过大等问题。当然下方的"保持构建天数" 和 保持构建的最大个数是可以自定义的,需要根据实际情况确定一个合理的值。2.源码管理源码管理,也就是项目代码存放的位置..原创 2020-11-20 10:04:12 · 6676 阅读 · 0 评论 -
jenkins自动化部署应用到k8s(5):gitlab创建项目
项目组创建选择左上角的群组,点进去后,右上角点击新建群组群组名称 可以自由定义 群组url分成三个部分,最前面是你服务器地址, 后面是项目标志符号,可以和项目名称统一方便记忆,也可以不统一。可见性级别私有 项目所属组内部的人员你可以看到 内部 所有有权限登陆服务器的都可以看到 公开 所有人可以不经过登陆查看项目创建点击左上角的项目,或者gitlab图标,进入项目列表。点击新建项目进入如下页面我们这里选择的空白项目,也可以导入项目或者从模板创建。...原创 2020-11-19 16:41:09 · 6057 阅读 · 1 评论 -
jenkins自动化部署应用到k8s(4):jenkins安装插件报错java.io time out
错误起因在使用jenkins的过程中,因为我下载的官方镜像,带的插件源是官方的,在国内不时会出现下载慢,下载超时报错的情况。因为当时没有留下截图,所以我这里也就不再模拟一次错误了。大致是java.io包,报了一个time out错误,实际上就是因为国外插件源访问超时。目前我们国内的团队正在积极的为成立jenkins中文组织做努力,我也在其中受益良多,希望大家多为各种国内技术组织贡献力量。解决方案直接使用含有中文插件源的镜像因为我们使用docker安装jenkins的时候一..原创 2020-11-19 11:00:42 · 6236 阅读 · 0 评论 -
jenkins自动化部署应用到k8s(3):部署思路
一、gitlab搭建二、jenkins搭建三、配置jenkins项目配置项目源码来源首先是要选择你自己的代码源,比如可以是gitlab或者github,或者是自建的git服务器,svn等等。jenkins中都有相关的插件来支持。本文之后将会使用Multiple SCMs,因为我们在使用过程中,有可能是需要用到多个git仓库(比如配置项和代码项分到了git仓库)我们就需要为每一个git仓库检出到不同文件夹,否则拉去两个git项目,后拉取的会覆盖前面的git项目的代码,最后成了之后后拉取的代码。构建原创 2020-11-19 10:22:08 · 6457 阅读 · 0 评论 -
jenkins自动化部署应用到k8s(1):安装gitlab
本文安装环境centos7.7docker:19.03.5本文需要的基础知识docker的基本操作gitlab镜像GitLab 分为 社区版(Community Edition,缩写为 CE)和 企业版(Enterprise Edition,缩写为 EE)。社区版是免费的,而企业版包含一些收费服务,一般来说个人开发者用社区版就足够了。下载镜像首先需要先下载 GitLab CE 的镜像,使用下面的命令进行下载,因为文件较大,所以可能需要一点时间,耐心等待即可。#..原创 2020-11-18 15:20:26 · 6190 阅读 · 0 评论 -
jenkins自动化部署应用到k8s(2):docker安装jenkins
本文安装环境centos7.7docker:19.03.5本文需要的基础知识docker的基本操作拉取镜像#docker pull jenkins/jenkins:ltslts就是latest的简写,不提前pull的时候,下面的run命令也会自动下载该镜像。创建本地数据卷我这里映射本地数据卷的路径为/data/jenkins_home/,你想放别的地方可以自行修改# mkdir -p /data/jenkins_home/需要修改下目录权限,因为当映射本地数据原创 2020-11-17 11:47:21 · 6378 阅读 · 0 评论