jenkins安装及其配置笔记

一、相关概念

1.1 Jenkins概念:

Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台。这是一个免费的源代码,可以处理任何类型的构建或持续集成。集成Jenkins可以用于一些测试和部署技术。Jenkins是一种软件允许持续集成。

1.2 Jenkins目的:

1、持续、自动地构建/测试软件项目。
2、监控软件开放流程,快速问题定位及处理,提示开放效率。

1.3 特性:

开源的java语言开发持续集成工具,支持CI,CD。
易于安装部署配置:可通过yum安装,或下载war包以及通过docker容器等快速实现安装部署,可方便web界面配置管理。
消息通知及测试报告:集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知,生成JUnit/TestNG测试报告。
分布式构建:支持Jenkins能够让多台计算机一起构建/测试。
文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。
丰富的插件支持:支持扩展插件,你可以开发适合自己团队使用的工具,如git,svn,maven,docker等。

1.4 产品发布流程:

产品设计成型 -> 开发人员开发代码 -> 测试人员测试功能 -> 运维人员发布上线
持续集成 (Continuous integration,简称CI)
持续交付(Continuous delivery)
持续部署(continuous deployment)

二、安装部署

2.1 yum安装

最低配置: 不少于256M内存,不低于1G磁盘,jdk版本>=8
安装jdk1.8

yum install -y java-1.8.0-openjdk && \
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo && \
rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key &&\
yum clean all && yum makecache && \
yum install -y jenkins && \
systemctl start jenkins

less /var/log/jenkins/jenkins.log //查询admin密码
访问 http://ip:8080/ 进行安装
jenkins相关目录:
rpm -ql jenkins #查看jenkins安装相关目录
安装目录/var/lib/jenkins
配置文件 /etc/sysconfig/jenkins
日志目录 /var/log/jenkins

2.2 下载war包安装

yum install -y java-1.8.0-openjdk && mkdir -p /usr/local/jenkins/ && \
wget -c -O /usr/local/jenkins/jenkins.war http://mirrors.jenkins.io/war-stable/latest/jenkins.war &&\
nohup java -jar /usr/local/jenkins/jenkins.war &

密码查看:/root/.jenkins/secrets/initialAdminPassword
访问 http://ip:8080/ 进行安装

如何想通过其他端口启动可以指定httpPort选项即可。

nohup java -jar jenkins.war --httpPort=8899 &

2.3 docker形式安装

yum install docker -y && systemctl start docker && \
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s && systemctl restart docker
docker search jenkins
docker pull docker.io/jenkins
docker run -d -p 8080:8080 docker.io/jenkins

docker exec -it 52873fa3dce4 /bin/bash
cat /var/jenkins_home/secrets #查看密码
访问 http://ip:8080/ 进行安装

2.4 相关工具安装

工具安装可在jenkins的web界面系统管理---管理插件---可选插件勾选需要的,也可以手动安装。

a.git安装

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc-c++ perl-ExtUtils-MakeMaker wget autoconf -y
wget https://www.kernel.org/pub/software/scm/git/git-2.7.3.tar.gz
tar xf git-2.7.3.tar.gz
cd git-2.7.3
make configure
./configure --prefix=/usr/local/git
make profix=/usr/local/git
make install
echo "export PATH=$PATH:/usr/local/git/bin" > /etc/profile.d/git.sh
source /etc/profile.d/git.sh

b.maven安装

cd /usr/local/ && wget -c wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz &&\
tar -zxf apache-maven-3.5.2-bin.tar.gz && \
echo "export PATH=$PATH:/usr/local/apache-maven-3.5.2/bin" > /etc/profile.d/maven.sh && \
source /etc/profile.d/maven.sh

mvn --version 查看版本

c.svn安装

yum install subversion -y
mkdir /svnrepo
svnadmin create /svnrepo/project1   #创建一个新的Subversion项目

启动项目1:svnserve -d -r /svnrepo/project1/
启动整个项目:svnserve -d -r /svnrepo/

d.jdk安装

某些情况下会遇到openjdk无法编译java程序,或在编译中存在异常,需要我们手动安装jdk,首先去Oracle官网下载对应版本的jdk

tar -zxvf jdk-8u121-linux-x64.gz -C /usr/local && \
ln -sv /usr/local/jdk1.8.0_121 /usr/local/jdk1.8 && \
echo "export PATH=$PATH:/usr/local/jdk1.8/bin" >/etc/profile.d/java.sh
source /etc/profile.d/java.sh

三、WEB界面配置

3.1 密码破解

 cd /var/lib/jenkins/users/admin     #此为admin用户的目录,也可以对应自己创建的用户
 vim config.xml                 //定位到<passwordHash>那一行
 删除改行,改为
 <passwordHash>#jbcrypt:$2a$10$pDQks0ytOkCfmpdgpLygrOC3uY7i/XnZHBKRQDhrBPwKoN2f5Kz8C</passwordHash>

重启一下jenkins
新密码为admin

3.2 maven配置

针对之前手动安装的maven需要在web界面配置进行结合。

系统管理---全局工具配置(Maven Configuration)配置:

此处为手动安装的maven,需要取消自动安装maven,name可以自定义,MAVEN_HOME指定下载安装的maven具体文件目录

3.3 GIT配置

手动安装的git,web界面只需添加具体可执行路径即可

3.4 jdk配置

对应手动安装的jdk,需要web配置java_home路径

3.5 邮件配置

jenkins有内置的邮件功能但由于其对于成功的发布不会发送邮件可定制化程度低,在此直接配置插件邮件(Editable Email Notification),2.32以上版本的jenkins,常用的插件都已经在最初部署的时候安装了(如果你当初选择的是suggest的plugins)。

可以使用qq邮件服务器或163等其他邮件服务器,在此配置使用163邮箱,首先需要开启163邮箱的smtp服务。

需要记录此处开启smtp时的密码。
在jenkins 系统管理---系统设置---Extended E-mail Notification

在默认的触发器 Default Triggers 标签下,可以勾选邮件通知触发的情况,如任何情况下均需要选择always,也可以在仅失败情况下发送,也可以对应的邮件接受人不通,进行邮件分类。

以下的内容,如邮件主题,内容均可自定义,可以参考url:至此全局插件邮件已经配置完毕,需要在具体的项目中使用此邮件进行发送通知。

四、实战php程序自动发布

4.1 插件安装

系统管理---管理插件---已安装

检查是否有“Git plugin”和“Publish Over SSH”两个插件,如果没有,则需点击“可选插件”,找到它并安装

安装好两个插件后,点击“系统管理”-- “系统设置”

4.2 SSH配置

系统管理---系统设置---Publish over SSH
在key内填写jenkins服务器的私钥,如果没有需要先在jenkins服务器生成私钥与公钥。ssh-keygen -t rsa回车后会在登录用户的家目录下生成一个.ssh 的目录,此目录下存在id_rsa私钥与id_rsa.pub公钥。且讲公钥发布至代码发布的目标服务器上ssh-copy-id -i /root/.ssh/id_rsa.pub root@IP

SSH Server配置
name:需要将php程序发布到目标服务器的名称,可自定义
Hostname:填写目录服务器的IP地址
Username:使用那个用户进行发布,此处为进行密钥互信的用户
Remote Directory:此出为发布到目标服务器的相对根路径,建议填写/,防止后续填写路径异常。


注:如果为多台目标服务器,可以继续添加,如果目标服务器存在代理,也可设置proxy

4.3 构建项目

新建Item---填入项目名称---选择构建一个自由风格的软件项目---确定
源码管理选择git
Repository URL 填写具体git上的仓库url,如果为私有,需要继续添加Credentials,如果为公有直接填写url即可,Credentials为none,

构建后够操作
选择(Send files or execute commands over SSH)
SSH Server选择目标服务器如:php-server
Source files: **/** #将git拉去下来的原始文件
Remote directory:/var/www/html #发布到目标服务器的制定目录
Exec command:chown apache:apache -R /var/www/html/* #制定后续的操作

此时可以选择Editable Email Notification来构建邮件通知。
在此处,之前的邮件主题,内容均可以自定义,在高级里面,选择邮件接受人。

点击保存,并立即构建,可以点击console output查看日志



此时打开php程序发现程序文件已经成功发布到目标服务器上

此时可以查看邮件也已经发送成功。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • window下使用Jenkins来做自动化部署的教程图解

    今天我们来说一下,如何使用Jenkins+powershell脚本,将我们的.NET CORE的脚本部署到对应的服务器上. 这里我们使用的源码管理工具是TFS.虽然源码管理器比较老旧,但是原理都差不多. 1.安装Jre,因为我们的Jenkins是基于java开发的,所以需要先在服务器上安装java的运行时环境 这个安装过程比较简单,百度下载JRE,然后安装,暂且不表. 下载地址:https://www.java.com/en/download/manual.jsp 2.下载并安装Jenkins,

  • Jenkins打包android应用时自动签名apk详解

    前言 如果你是使用android studio编译项目的化,在编译apk只会会自动给apk签名. 但默认配置下jenkins下编译出的apk是unsign的.需要一些额外的设置才能自动sign. 这个功能需要我们修改下build.gradle配置文件,让gradle在编译之后执行签名. 当然你也可以在这里做一些其他的修改,比如修改编译出的apk的名字,让他加个当前时间的时间戳,编译类型的后缀什么的,方便识别. 1.生成的apk名加上当前时间 + 修改apk的发布路径 在build.gradle配

  • Centos7+Docker+Jenkins+ASP.NET Core 2.0自动化发布与部署的实现

    前言 Docker一直很火热,一直想把原本的Jenkins自动部署工具搬到Docker上面,无奈今年一直忙于各种事情,迟迟未实施这个事情,正好迎来了dotnet core 2.0 的正式发布,升级项目的同时,顺便直接将Jenkins搬到Docker上.为什么要写这篇文章呢?因为找过相关的资料,大多数文章都是基于Ubuntu 安装.net core 又或者 GitLab 进行持续集成 自动部署等等等,并未有人尝试过Centos7.3 上部署 Jenkins 并且 构建 ASP.NET CORE 2

  • 详解使用Jenkins部署Spring Boot项目

    jenkins是devops神器,本篇文章介绍如何安装和使用jenkins部署Spring Boot项目 jenkins搭建 部署分为三个步骤: 第一步,jenkins安装 第二步,插件安装和配置 第三步,Push SSH 第四步,部署项目 第一步 ,jenkins安装 准备环境: JDK:1.8 Jenkins:2.83 Centos:7.3 maven 3.5' jdk默认已经安装完成 配置maven 版本要求maven3.5.0 软件下载 wget http://mirror.bit.ed

  • Jenkins使用Gradle编译Android项目详解

    创建项目 在主界面的左侧菜单选 新建 在向导中选择 输入项目名称,类型选择 构建一个自由风格的软件项目 点确定进入项目的配置界面 源码管理 选择git Repository URL输入项目路径 比如 https://git.coding.net/coderstory/Mi-Purify.git Credentials是对应的账户密码 点击add按钮添加github账户密码 Branch Specifier 是选择具体的分支 默认是master 在构建大类中 勾选Invoke Gradle [不知

  • jenkins安装及其配置笔记

    一.相关概念 1.1 Jenkins概念: Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台.这是一个免费的源代码,可以处理任何类型的构建或持续集成.集成Jenkins可以用于一些测试和部署技术.Jenkins是一种软件允许持续集成. 1.2 Jenkins目的: 1.持续.自动地构建/测试软件项目. 2.监控软件开放流程,快速问题定位及处理,提示开放效率. 1.3 特性: 开源的java语言开发持续集成工具,支持CI,CD. 易于安装部署配置:可通过yum

  • Linux下PHP加速器APC的安装与配置笔记

    当前我用的是APC-3.1.9 stable ,可以自己到 http://pecl.php.net/package/APC 下载最新版. 1.安装 复制代码 代码如下: wget http://pecl.php.net/get/APC-3.1.9.tgz tar xzvf APC-3.1.9.tgz cd APC-3.1.9 /usr/local/php/bin/phpize ./configure --enable-apc --enable-apc-mmap --with-php-config

  • Mongodb安装与配置笔记

    1. 复制Mongodb到指定服务器 到mongodb官方网站http://www.mongodb.org/downloads下载mongodb,解压并将目录考到需要安装的服务器上,然后进行配置.例如: 复制代码 代码如下: [root@SHNHDX17-165 ~]# scp -r root@10.3.18.80:/data/web/dxm/mongodb/mongodb-linux-x86_64-2.4.5 data/web/ 会将mongodb目录copy到10.11.17.165服务器的

  • java 学习笔记(入门篇)_java的安装与配置

    学习Java已经很长时间了,但是总感觉基础不是很好,有时候遇到一些平时不常见的问题就会无从下手,也从侧面显现了自己的一些问题.所以,打算写Java的随手笔记来巩固基础,加强学习.今天是第一篇,主要是java的安装,配置,也就是常说的Hello world. 一.下载 进入Oracle的官网,下载Java的jdk, 二.安装 安装就简单了,只需要下一步就可以,路径可以根据需要自己选择. 三.配置 安装完jdk后还不能来编译程序,因为还需要配置java 的jdk.进入的系统属性->高级->环境变量

  • Jenkins安装以及邮件配置详解

    Jenkins是一个java开发的.开源的.非常好用持续集成的工具,它能帮我们实现自动化部署环境.测试.打包等等的工作,还可以在构建任务成功或者失败之后给我们发邮件通知. 什么叫持续集成呢,就是能重复.持久的去运行一个任务. Jenkins下载.安装 Jenkins的下载地址是https://jenkins.io/download/,下载的时候可以选择各个版本的以及对应操作系统的版本,一般你下载的时候下载通用的.war文件即可,这个不管在哪个操作系统上都可以运行,但是前提是你要装jdk,因为Je

  • Jenkins安装和插件管理配置入门教程

    目录 安装Jenkins 持续集成环境Jenkins插件管理 修改Jenkins插件下载地址 下载中文汉化插件 升级Jenkins 安装Jenkins 1)安装JDK Jenkins需要依赖JDK,所以先安装JDK1.8 yum -y install java-1.8.0-openjdk* # 安装到了: /usr/lib/jvm # 查看java版本信息 java -version 2)获取Jenkins安装包,进行安装, 下载页面:https://jenkins.io/zh/download

  • Node.js 学习笔记之简介、安装及配置

    简单的说 Node.js 就是运行在服务端的 JavaScript. Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台. Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好. 谁适合阅读本教程? 如果你是一个前端程序员,你不懂的像PHP.Python或Java等动态编程语言,然后你想创建自己的服务,那么Node.js是一个非常好的选择. Node.js 是运行在服

  • 持续集成工具之Jenkins安装部署的详细教程

    一.DevOps理念 所谓DevOps是指development和Operations的组合,中文意思就是开发和运维的简写.devops理念主要是针对企业中的研发人员.运维人员和测试人员的工作理念,是他们在应用开发.代码部署和质量测试等整条生命周期中协作和沟通的最佳实践DevOps 强调整个组织的合作以及交付和基础设施变更的自动化.从而实现持续集成.持续部署和持续交付.传统的模式的开发人员只顾开发程序,运维只负责基础环境管理和代码部署及监控等,其并不是为了一个共同的目标而共同实现最终的目的,而D

  • jmeter+ant+jenkins自动化测试环境配置搭建过程

    目录 ant下载及环境变量配置 1.ant下载 2.配置ant环境变量 3.检查配置成功与否 ant配置 1.将\apache-jmeter-3.3\extras下面的ant-jmeter-1.1.1的jar包到ant的lib目录 2.配置xml文件 3.修改jmeter下jmeter.properties配置 dos窗口运行脚本 测试报告 配置日期格式 jenkins中任务配置 1.jenkins中创建任务 2.任务配置 3.配置测试报告 构建任务 1.立即构建 2.查看报告 问题总结 一直想

  • Redis数据库的安装和配置教程详解

    目录 1.Redis安装 1.1.Linux环境安装Redis 1.2.Windows环境安装Redis 2.2.安装Redis图形客户端 2.3.Redis持久化简述 3.Redis配置参数 1.Redis安装 1.1.Linux环境安装Redis step-1:下载Redis 进入官网找到下载地址https://redis.io/download wget https://github.com/redis/redis/archive/7.0.0.tar.gz step-2:解包 tar -z

随机推荐