# 介绍&安装

# 什么是CI/CD

CI/CD即持续集成(Continuous Integration)、持续交付(Continuous Delivery)和持续部署(Continuous Deployment),是一种通过引入自动化构建部署来频繁向客户交付的方法。CI/CDDevOps的基础核心,如果没有CI/CD自动化的工具和流程,DevOps是没有意义的,来看下图DevOps工作流程图:

具体的流程为:

  • 先是计划plan,编码code,然后编译build,测试test(Dev)
  • 然后发布release,部署deploy,运维operate,监控monitor(Ops)
  • 然后发现问题或有新的需求,就重新计划plan...如此循环

这就是完整的DevOps流程,试想如果没有自动化,那将是很繁重的任务。

与传统的项目部署相比,自动化流程的意义:

  • 减少人为失误,提高软件质量
  • 效率迭代,便捷部署
  • 快速交付,便于管理

主流的自动化软件对比

从上图可以看出主要的软件有Jenkins,Travis CI,Circle CI, 后面两个是云平台,而且只支持公有Public项目,私有项目需要付费;Jenkins支持本地化部署,而且免费,可高度配置,是开源CI&CD软件领导者, 提供超过1000个插件来支持构建、部署、自动化, 满足任何项目的需要。

# Jenkins 介绍

官网:https://www.jenkins.io/ (opens new window)

Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。
Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。

Jenkins & Gitee 持续集成流程

  • 在本地编辑器编辑代码,提交到Gitee
  • git push 操作触发 Jenkins 自动部署(Jenkins 安装在 Docker 中)
  • Jenkins 开始构建、打包、最后部署到云服务器

提示

除了Gitee,也可以使用GitLab,GitHub等代码仓库。

# 安装Jenkins

本节的步骤适用于本地机器上的 Jenkins 新安装。

Jenkins 通常作为一个独立的应用程序在其自己的流程中运行, 内置 Java servlet 容器/应用程序服务器(Jetty)。 Jenkins 也可以运行在不同的Java servlet容器(如Apache Tomcat 或 GlassFish)中作为servlet运行。

尽管此页面重点关注Jenkins的本地安装,但此内容也可用于帮助在生产环境中设置Jenkins

# 系统要求

最低推荐配置:

  • 256MB可用内存
  • 1GB可用磁盘空间(作为一个Docker容器运行jenkins的话推荐10GB)

为小团队推荐的硬件配置:

  • 1GB+可用内存
  • 50 GB+ 可用磁盘空间

软件配置:

  • Java 8—​无论是Java运行时环境(JRE)还是Java开发工具包(JDK)都可以。

注意

将Jenkins作为Docker 容器运行,这不是必需的,也可以直接安装Jenkins。

# Docker安装方式

$ docker run --name jenkins_test -p 11005:8080 -p 50000:50000 jenkins/jenkins:lts
  • --name 容器名称定义为jenkins_test
  • -p 将本地11005端口映射到Jenkins容器中的8080端口,这是访问Jenkins网页的端口
  • -p 50000端口映射是与Jenkins主服务器上通信的端口号

上面没有挂载 volume, 如果有必要可以使用 -v 来映射容器内部文件:

-v jenkins-data:/var/jenkins_home

安装完成后这里提示有个初始密码,第一次登录需要用到,也可以在/var/jenkins_home/secrets/initialAdminPassword找到,通过 docker ps | grep jenkins 查看 Jenkins 是否已开启,如果没有开启可以使用 docker start jenkins 来开启。

注意

注意添加本地的端口(11005)到防火墙,还有注意云主机也开放了此端口,否则不能访问哦。

在浏览器访问11005端口开始使用 Jenkins

解锁Jenkins

点击【继续】,然后开始安装插件:

自定义Jenkins

选择【安装推荐的插件】开始安装:

新手入门

创建第一个管理员用户:

创建第一个管理员用户

确认Jenkins访问路径:

实例配置

安装完毕,开始使用:

Jenkins已就绪

首页欢迎界面:

开始使用

# War包直装方式

Jenkins的Web应用程序ARchive(WAR)文件版本可以安装在任何支持Java的操作系统或平台上。

要下载并运行Jenkins的WAR文件版本,请执行以下操作:

  1. 最新的稳定Jenkins WAR包 (opens new window) 下载到您计算机上的相应目录。
  2. 在下载的目录内打开一个终端/命令提示符窗口到。
  3. 运行命令java -jar jenkins.war
  4. 浏览http://localhost:8080并等到Unlock Jenkins页面出现。

# macOS系统

  1. 从网站安装的话使用这个包:
  1. Jenkins 也可以使用brew以下方式安装:
  • 安装最新版本
brew install jenkins
  • 安装 LTS 版本
brew install jenkins-lts