重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

jenkins基础构建

持续集成之 Jenkins+Gitlab 简介 [一]

持续集成概念
持续集成 Continuous Integration
持续交付 Continuous Delivery
持续部署 Continuous Deployment
1.1 什么是持续集成:
持续集成是指开发者在代码的开发过程中,可以频繁的将代码部署集成到主干,并进程自动化测试
jenkins基础构建
1.3 什么是持续交付:
持续交付指的是在持续集成的环境基础之上,将代码部署到预生产环境
jenkins基础构建
1.4 持续部署:
在持续交付的基础上,把部署到生产环境的过程自动化,持续部署和持续交付的区别就是最终部署到生产环境是自动化的。
jenkins基础构建
1.5 部署代码上线流程
1.代码获取(直接了拉取)
2.编译 (可选)
3.配置文件放进去
4.打包
5.scp 到目标服务器
6.将目标服务器移除集群
7.解压并放置到 Webroot
8.Scp 差异文件
9.重启 (可选)
10.测试
11.加入集群
运维必知 OWASP
Jenkins 上 OWASP 插件介绍: 它是开放式 Web 应用程序安全项目[OWASP,Open Web Application Secunity Project]它每年会出一个 top10 的安全漏洞,我们需要知道当前 top10 的漏洞有哪些
jenkins基础构建
https://www.owasp.org/images/5/57/OWASP_Proactive_Controls_2.pdf
https://www.owasp.org/index.php/Top_10_2013-Top_10
Gitlab 介绍
GitLab 是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的 Git 项目仓库,
可通过 Web 界面进行访问公开的或者私人项目。
GitLab 拥有与 Github 类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库
的访问,它非常易于浏览提交过的版本并提供一个文件历史库。它还提供一个代码片段收集功能可
以轻松实现代码复用,便于日后有需要的时候进行查找。
环境准备

创新互联建站专注于登封网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供登封营销型网站建设,登封网站制作、登封网页设计、登封网站官网定制、微信小程序开发服务,打造登封网络公司原创品牌,更为您提供登封网站排名全网营销落地服务。

上传所需安装包
jenkins基础构建

安装部署gitlab

1.安装gitlab
rpm -ivh gitlab-ce-11.9.8-ce.0.el6.x86_64.rpm
2.初始化gitlab
gitlab-ctl reconfigure
3.浏览器登陆gitlab
jenkins基础构建
jenkins基础构建
4.新建一个项目

jenkins基础构建
jenkins基础构建

jenkins基础构建

在Linux生成密钥并复制
ssh-keygen -t rsa 生成密钥
cat /root/.ssh/id_rsa.pub 查看密钥并复制

放置密钥

jenkins基础构建
进入自己的项目
jenkins基础构建
5.设置项目在linux
参考web上的介绍
jenkins基础构建
(1) 创建用户和所需邮箱表明身份

[root@localhost ~]# git config --global user.name “admin”
[root@localhost ~]# git config --global user.email  admin@admin.com

(2) 克隆一个仓库

git clone git@192.168.1.40:root/xgp-demo.git
[root@localhost ~]# cd xgp-demo/   进入库
[root@localhost xgp-demo]# vim index.html    创建测试文件
[root@localhost xgp-demo]# git add index.html   上传测试文件到缓存
[root@localhost xgp-demo]# git commit  -m "1"   上传到版板库
[root@localhost xgp-demo]# git push  -u origin  master  上传到运程仓库

(3).修改配置文件

[root@localhost xgp-demo]# vim /etc/gitlab/gitlab.rb  
external_url 'http://192.168.1.40'    #13行

(4).重新初始化一下
gitlab-ctl reconfigure

安装部署jenkins

Jenkins 介绍
Jenkins 只是一个平台,真正运作的都是插件。这就是 jenkins 流行的原因,因为 jenkins 什么插件都有Hudson 是 Jenkins 的前身,是基于 Java 开发的一种持续集成工具,用于监控程序重复的工作,
Hudson 后来被收购,成为商业版。后来创始人又写了一个 jenkins, jenkins 在功能上远远超过
hudson
Jenkins 官网: https://jenkins.io/
Jenkins 是 Java 编写的,所以需要先安装 JDK,这里采用 yum 安装,如果对版本有需求,可以
直接在 Oracle 官网下载 JDK。
安装
1.安装 JDK
rpm -ivh jenkins-2.172-1.1.noarch.rpm
2.修改JDK配置文件
vim /etc/sysconfig/jenkins
JENKINS_PORT="8081" #修改端口 56
3.启动JDK并查看端口
/etc/init.d/jenkins start #启动
netstat -anpt | grep 8081 #查看的端口
jenkins基础构建

  1. Jenkins Web 访问地址: 192.168.1.40:8081
    jenkins基础构建
    Linux查看密码并复制到web页面 ,然后点击继续
    [root@localhost ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
    bb220f4cf61d46999ba7f6686eeecf32

(1)安装方法一
复制这个文件下面的 ID,否则不可以进行安装。我们选择推荐安装即可
jenkins基础构建
设置用户名密码:
jenkins基础构建
点击保存并退出
jenkins基础构建
(3) 安装方法二

[root@localhost ~]# tar zxf jenkins-plugins.tar.gz    #解压所需安装包
[root@localhost ~]# rm -rf /var/lib/jenkins/plugins/   #删除目录
[root@localhost ~]# mv plugins/ /var/lib/jenkins/ #将替换目录移动过去
[root@localhost ~]# /etc/init.d/jenkins restart   #重启JDK
Restarting jenkins (via systemctl):                        [  确定  ]

浏览器查看一下
jenkins基础构建
Linux查看密码并复制到web页面 ,然后点击继续 (记得断网)
[root@localhost ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
bb220f4cf61d46999ba7f6686eeecf32
jenkins基础构建
jenkins基础构建
jenkins基础构建
3.安装完成查看一下插件
jenkins基础构建
jenkins基础构建

jenkins基础构建

持续集成之 Jenkins+Gitlab 实现持续集成 [二]

项目:使用 git+jenkins 实现持续集成
jenkins基础构建
jenkins基础构建

(1) 方法一
源码管理
我们安装的是 git 插件,还可以安装 svn 插件
jenkins基础构建
们将 git 路径存在这里还需要权限认证,否则会出现 error
jenkins基础构建
cat /root/.ssh/id_rsa 查看密钥方式
我们添加一个认证
jenkins基础构建jenkins基础构建

现在我们复制 git 的 url 就不会出现验证提示
jenkins基础构建

(2)方法二
jenkins基础构建
保存完毕后,我们选择立即构建
jenkins基础构建
构建成功
jenkins基础构建

Linux上查看一下
jenkins基础构建

自动构建

  1. 安装插件
    先进入到之前查看插件的地方
    系统设置----插件管理----高级_---上传插件gitlab-oauth、gitlab-plugin、 windows-slaves、ruby-runt ime、gitlab-hook
    jenkins基础构建
  2. 构建触发器(xgp改为了x)
    x- demo---配置-- -构建触发器------勾选触发远程构建--构建身份令牌(在终 端执行openssl rand -hex 10) 生成的令牌238e3f0ed60b9bc795f3
    勾选Build when a change is pushed to GitLab
    --保存
    jenkins基础构建
    jenkins基础构建
    openssl rand -hex 10 生成十位数令牌
    jenkins基础构建
  3. 回到git1ab的web页面
    点击projects--your project- -web- demo--settings-- Integrations -- JENKINS_ URL/ job/web- demo/build?token=TOKEN NAME- -取消勾选Enable SSL verification
    jenkins基础构建
    jenkins基础构建
    确定之后有报错:解决方法
    回到git1ab的web页面---点击小钳子---settings---Ne twork-----0utbound requests---- 勾选Allow requests to the local ne twork(允许本地请求)
    jenkins基础构建

再次点击projects--your project- -web- demo--settings-- Integrations -- JENKINS_ URL/ job/web- demo/build?token=TOKEN NAME- -取消勾选Enable SSL verification

jenkins基础构建
4.测试一下
jenkins基础构建
jenkins基础构建
可以看到又有报错:解决方法
回到jenkins页面
系统管理---全局安全设置---授权策略-- -取消勾选防止跨站点请求伪造
勾选匿名用户具有可读权限
系统管理--系统设置---取消勾选Enable authentication for '/project' end-point
jenkins基础构建
jenkins基础构建
jenkins基础构建
jenkins基础构建
jenkins基础构建
回到gitlab测试一下
jenkins基础构建
成功
jenkins基础构建

  1. 在Linux上创建测试文件,再次测试一下

    49  cd xgp-demo/
    50  vim xgp.txt
    51  git add xgp.txt 
    52  git commit -m "web hook"
    53  git push origin master

    jenkins基础构建
    在web界面的jenkins查看一下
    jenkins基础构建

    jenkins基础构建

实验完毕


分享标题:jenkins基础构建
标题来源:http://cqcxhl.cn/article/posphd.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP