自动化部署jenkins

部署Jenkins+Gitlab实现持续集成

只谈情不闲聊 提交于 2020-03-18 12:45:19
Jenkins介绍 Jenkins 只是一个平台,真正运作的都是插件。这就是 jenkins 流行的原因,因为 jenkins 什么插件都有Hudson 是 Jenkins 的前身,是基于 Java 开发的一种持续集成工具,用于监控程序重复的工作,Hudson 后来被收购,成为商业版。后来创始人又写了一个 jenkins,jenkins 在功能上远远超过hudson。 1、什么是集成? 指的是代码由编译、发布和测试、直到上线的一个过程。 2、什么是持续集成? 高效的、持续性质的不断迭代代码的集成工作。 3、如何高效准确的实现持续集成 必不可少的需要一套能自动化、并且可视化的平台来帮助我们。 根据以上几点来看,Jenkins就是一个可以实现持续集成的平台。 4、为什么是Jenkins来帮助我们实现持续集成? 1)Jenkins是一个开源的、且基于JAVA代码开发的持续集成系统 因为含有非常丰富的插件支持,所以我们可以方便的打通版本库、测试构建环境、线上环境的所有环节。并且丰富友好的通知使用者和开发、管理人员。 2)安装维护简单 安装Jenkins,不太复杂。而且支持通用的平台。 3)Java应用常用 在企业的软件构建过程中,JAVA的应用工程稍显复杂,由于复杂构建和代码上线、并且服务的重启。整个过程下来,消耗的时间较多,Jenkins却能很好的集成maven的编译方式

linux环境下搭建自动化Jenkins管理工具

坚强是说给别人听的谎言 提交于 2020-03-06 18:53:23
一、搭建一个jak--tomcat服务器到自己的linux服务器上   具体的服务器搭建这里可以参考华华大佬的博客:https://www.cnblogs.com/liulinghua90/p/4661424.html 二、 如果通过http:ip地址:端口在浏览器访问出现下 说明搭建服务器成功了,接着就是到网上去下载Jenkins的war包 ① 下载jenkins.war 包。Jenkins官方地址:http://Jenkins-ci.org/ (最新war包的下载地址:http://mirrors.jenkins-ci.org/war/latest/jenkins.war) ② 下载一个tomcat容器在webapps中放入jenkins.war,不要解压。 ③ 通过cd命令到webapps/ 中执行 java -jar jenkins.war 三、 查看日志是否有异常,访问http://ip:8080即可看到jenkins界面,jenkins安装成功。 四、其中首次访问Jenkins需要获得密码 通过cd命令cd /root/.jenkins里面有个secrets文件里的initialAdminPassword里就是密码了 复制到访问的登录Jenkins页面就可以生效了 五、有时会出现访问一直空白页面的情况,这里是权限配置的问题导致的 具体解决办法是可以参考:https:/

centos 安装Jenkins

江枫思渺然 提交于 2020-03-06 18:39:26
Jenkins 是一个开源的, 基于Java的自动服务器,提供了一种建立持续集成和持续交付(CI/CD)流水线的简单方法 。 持续集成 (CI)是DevOps实践中,团队成员定期将他们的代码更改提交到版本仓库, 然后运行自动化的构建和测试. 持续交付(CD)是自动构建、测试和部署代码更改到生产环境的一系列实践。 这篇教程,将带你完成在centos系统上进行安装jekins的步骤使用官方Jenkins库。 准备工作 安装Jenkins以前,确保你已经有超级管理或者安装Jenkins的权限。本文安装是使用超级管理员的权限进行安装的。 安装步骤 一、安装JDK Jenkins 是一个Java应用, 因此第一步是安装JDK,运行以下命令安装那个OpenJDK8 安装包。 如果环境上面已经安装JDK8可以跳过该步骤。 [root@localhost ~]# sudo yum install java-1.8.0-openjdk-devel 安装成功之后可以使用java -version 命令进行验证一下。方法如下: [root@localhost ~]# java -version openjdk version "1.8.0_212" OpenJDK Runtime Environment (build 1.8.0_212-b04) OpenJDK 64-Bit Server VM

自动化部署之jenkins及简介

你。 提交于 2020-03-05 17:04:22
一、什么是持续集成? (1)Continuous integration(CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。 (2)没有持续集成 项目做模块集成的时候,发现很多借口都不通==>浪费大量时间 需要手动去编译打包最新的代码==>构建过程不透明 发布代码,上线,基本靠手工==>脚本乱飞 (3)持续集成最佳实践: 维护一个单一的代码库 使构建自动化 执行测试是构建的一部分 集成日志及历史记录 使用统一的依赖包管理库 每天至少集成一次 (4)jenkins介绍 Jenkins 只是一个平台,真正运作的都是插件。这就是jenkins流行的原因,因为jenkins什么插件都有 Hudson 是Jenkins的前身,是基于Java开发的一种持续集成工具,用于监控程序重复的工作,Hudson后来被收购,成为商业版。后来创始人又写了一个 jenkins ,jenkins在功能上远远超过hudson Jenkins官网: https://jenkins.io/ Jenkins下载:http://updates.jenkins-ci.org/

自动化部署之jenkins及简介

不羁岁月 提交于 2020-03-05 17:03:30
一、什么是持续集成? (1)Continuous integration(CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。 (2)没有持续集成 项目做模块集成的时候,发现很多借口都不通==>浪费大量时间 需要手动去编译打包最新的代码==>构建过程不透明 发布代码,上线,基本靠手工==>脚本乱飞 (3)持续集成最佳实践: 维护一个单一的代码库 使构建自动化 执行测试是构建的一部分 集成日志及历史记录 使用统一的依赖包管理库 每天至少集成一次 (4)jenkins介绍 Jenkins 只是一个平台,真正运作的都是插件。这就是jenkins流行的原因,因为jenkins什么插件都有 Hudson 是Jenkins的前身,是基于Java开发的一种持续集成工具,用于监控程序重复的工作,Hudson后来被收购,成为商业版。后来创始人又写了一个 jenkins ,jenkins在功能上远远超过hudson Jenkins官网: https://jenkins.io/ Jenkins下载:http://updates.jenkins-ci.org/

docker + jenkins 自动化部署

一曲冷凌霜 提交于 2020-02-27 10:04:08
公司书架上有本docker的书籍,正好最近事不多就写个demo来玩一玩。 DevOps未死,ContainerOps已到 ContainerOps VS DevOps 避免了复杂的环境,应用之间的相互影响 撸前准备 docker docker download docker install for ubuntu 引入一些概念 镜像只读的一个应用 (类似 node_modules 下面的包) 容器可读写的镜像 开撸 检验docker是否安装成功 docker --version 如果成功会有相应的版本号显示 然后就可以去下载自己想下载的镜像了 docker registry(镜像仓库) 类似 npm 仓库 可以通过 docker search 来搜索镜像是否存在。接下来就是拉去镜像,默认的话docker 都会拉最新的镜像包,如果要拉取特定的版本在后面在,下载Jenkins。 docker pull jenkins/jenkins:lts !切记,直接docker pull jenkins 会拉去 jenkins:latest 版本是2.60.3,这个版本兼容问题贼大。有兴趣的同学可以去试一试。 下完的镜像都在docker image 下面,通过 命令 docker images 或者 docker image ls 可以查看安装过的镜像。每个镜像可以看作一个个独立的盒子

Jenkins安装以及配置

微笑、不失礼 提交于 2020-02-27 06:57:08
Jenkins介绍 Jenkins是一个java开发的、开源的、非常好用持续集成的工具,它能帮我们实现自动化部署环境、测试、打包等等的工作,还可以在构建任务成功或者失败之后给我们发邮件通知。 什么叫持续集成呢,就是能重复、持久的去运行一个任务。 jenkins不但能够持续集成,还能够定时构建和生成报告(只能识别xml格式的文件) 一、jenkins下载安装: 搭建jenkins起因: 自己搭建基于python自带的 unittest框架的接口自动化框架,需要用到jenkins来做持续集成帮助拉取最新代码执行测试 Jenkins的下载地址是https://jenkins.io/download/,下载的时候可以选择各个版本的以及对应操作系统的版本, 一般你下载的时候下载通用的.war文件 即可,这个不管在哪个操作系统上都可以运行,但是前提是你要装jdk,因为Jenkins是java开发的。 本篇博客用的Jenkins是 2.17 版本,jdk的版本是 1.7 , 如果你是在官网上下载最新的Jenkins版本,需要1.8的jdk,否则可能启动Jenkins失败。 下载之后就要启动jenkins,无论是mac、linux、windows 只要进入jenkins。war所在的目录然后执行 java -jar jenkins.war启动即可 ,启动之后在命令行查看运行日志,显示:

linux 搭建jenkins

99封情书 提交于 2020-02-24 07:53:05
一、什么是持续集成? (1)Continuous integration(CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。 (2)没有持续集成 项目做模块集成的时候,发现很多借口都不通==>浪费大量时间 需要手动去编译打包最新的代码==>构建过程不透明 发布代码,上线,基本靠手工==>脚本乱飞 (3)持续集成最佳实践: 维护一个单一的代码库 使构建自动化 执行测试是构建的一部分 集成日志及历史记录 使用统一的依赖包管理库 每天至少集成一次 (4)jenkins介绍 Jenkins 只是一个平台,真正运作的都是插件。这就是jenkins流行的原因,因为jenkins什么插件都有 Hudson 是Jenkins的前身,是基于Java开发的一种持续集成工具,用于监控程序重复的工作,Hudson后来被收购,成为商业版。后来创始人又写了一个 jenkins ,jenkins在功能上远远超过hudson Jenkins官网: https://jenkins.io/ Jenkins下载:http://updates.jenkins-ci.org/

通过 CLI 管理 Jenkins Server

佐手、 提交于 2020-02-22 01:33:09
Jenkins 内置的命令行接口允许管理员通过命令行工具访问并管理 Jenkins。这让我们可以通过脚本自动化的创建配置或执行任务,也就是把 Jenkins 中的配置代码化了。Jenkins 同时支持通过 SSH 和客户端命令行工具 jenkins-cli.jar 进行访问。本文主要介绍如何通过这两种方式用命令行操作 Jenkins。说明:本文的演示环境为 ubuntu 16.04。 通过 SSH 执行命令 在 Jenkins Server 的默认安装中,内置的 SSH service 是没有启用的: 我们可以通过下面的配置让 Jenkins 启用 SSH service,Jenkins ->Configure Global Security: 笔者选择让 Jenkins 的 SSH Server 监听 8090 端口,如果你选择的是 Random,那么监听的端口是随机产生的,无论如何,我们都可以用下面的命令来获得 Jenkins SSH Server 监听的端口号: $ curl -Lv http://192.168.21.145:8080/login 2>&1 | grep 'X-SSH-Endpoint' 说明:笔者的 Jenkins Server 部署在主机 192.168.21.145 上,监听的端口号为 8080。用户至少要有 Overall/Read

Jenkins Pipeline 剖析

最后都变了- 提交于 2020-02-14 00:26:43
什么是 Jenkins Pipeline? Jenkins Pipeline(或简称为”Pipeline”)是一套Jenkins插件,将持续交付的实现和实施集成到Jenkins 中。持续交付Pipeline 自动化将基于版本控制管理的软件持续的交付到用户手中。Jenkins Pipeline 提供了一套可扩展的工具,用于将“简单到复杂”的交付流程实现为“持续交付即代码”。Jenkins Pipeline 的定义通常被写入到一个文本文件(称为Jenkinsfile )中,该文件可以被放入项目的源代码控制库中。 简而言之,Jenkins Pipeline是一组插件的组合,该组插件用于Jenkins集成和实现连续交付。Jenkins Pipeline 通过DSL(Domain Specific Language)创建基于“代码”的简单的或复杂的持续交付Jenkins任务。 持续交付 Pipeline 运行过程 在Jenkins Pipeline中,每个作业(Job) 都至少依赖一个或多个作业或事件。 上图显示了Jenkins持续交付流程,该流程包含一系列状态的转移,分别为构建,部署,测试和发布阶段,这些阶段相互关联。这些阶段根据持续交付Pipeline中定义的顺序执行。持续交付流程显示了软件从构建到发布的全过程,表明了软件产品中进行的每项更改都需要经过许多复杂的过程才能发布