[关闭]
@mrz1 2018-05-08T06:47:35.000000Z 字数 2032 阅读 771

jenkins

持续集成


主要知识点

  1. 安装部署Jenkins和gitlib。
  2. 了解gilib的常用命令
  3. 部署haproxy与tomeat环境

  4. 配置Jenkins使用gitib更新代码。

  5. 通过sonar实现代码检测
  6. 实现gilib触发Jenkins自动部器
  7. 通过Jenkins实现自动部曾
  8. 实现haproxy动态添加期除后端服务器
  9. 编写脚本实现自动作化部署与回滚

Jenkins介绍

Jenkins 是一款流行的开源持续集成(Continuous Integration)工具,广泛用于项目开发,具有自动化构建、测试和部署等功能。本文以 CentOS7 环境为例,

相关术语解释

什么是持续集成?

持续集成是指开发者在代码的开发过程中,可以频繁的将代码部署到集成到主干,并进程自动化测试。

什么是持续交付?

持续交付是指在持续集成的环境基础之上,将代码部署到预生产环境。

什么是持续部署?

在持续交付的基础之上,把部署到生产环境的过程自动化,持续部署 和交付的区别就是最终部署到生产环境是自动化的。


gitlib说明

GitLab 是一个用于仓库管理系统的开源项目。使用Git作为代码管理工具,并在此基础上搭建起来的web服务,它集成了Github的可视化功能,方便开发人员协同工作.

GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。

GitLab拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

系统环境准备:

最小化服务器安装,配置如下:

  1. # yum install vim gcc gcc-c++ wget net-tools Irzsz iotop lsof iotop bash-completion -y
  2. # yum install curl policycoreutils openssh-server openssh-clients postfix -y
  3. # wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
  4. # systemctl disable firewalld
  5. # sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
  6. # iptables -F
  7. # hostnamectl set-hostname chuyuni.cn && exec bash
  8. # yum update -y && reboot

三台服务器 jenkins-server gitlib-server ``

  1. [root@gitlib-server ~]# ls
  2. jdk-8u111-linux-x64.rpm jenkins-2.27-1.1.noarch.rpm
  3. [root@gitlib-server ~]#yum install *.rpm
  1. [root@gitlib-server ~]#ls
  2. gitlab-ce-8.13.5-ce.0.el7.x86_64.rpm jdk-8u111-linux-x64.rpm
  3. [root@gitlib-server ~]#rpm -ivh gitlab-ce-8.13.5-ce.0.el7.x86_64.rpm
  4. [root@gitlib-server ~]#vim /etc/gitlab/gitlab.rb
  5. external_url 'https://192.168.42.72' #服务器IP地址 有域名可以写域名
  6. # 邮箱测试
  7. gitlab_rails['smtp_enable'] = true
  8. gitlab_rails['smtp_address'] = "smtp.163.com"
  9. gitlab_rails['smtp_port'] = 25
  10. gitlab_rails['smtp_user_name'] = "rooroot@163.com"
  11. gitlab_rails['smtp_password'] = "zhang@123"
  12. gitlab_rails['smtp_domain'] = "163.com"
  13. gitlab_rails['smtp_authentication'] = "login"
  14. gitlab_rails['smtp_enable_starttls_auto'] = true
  15. gitlab_rails['smtp_tls'] = false
  16. gitlab_rails['gitlab_email_from'] = 'rooroot@163.com'
  17. user['git_user_email'] = "rooroot@163.com"
  18. [root@gitlib-server ~]#gitlab-ctl --help #查看命令帮助
  19. [root@gitlib-server ~]#gitlab-ctl reconfigure #重新加载上面配置
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注