Jenkins

什么是jenkins?

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能

Jenkins功能包括:
1、持续的软件版本发布/测试项目。
2、监控外部调用执行的工作。
首先保证系统中已经安装了jdk,最好是jdk1.5以上。
第一种启动方法,切换到jenkins.jar存放的目录,输入如下命令:
$ java -jar jenkins.jar
然后在浏览器中(推荐用火狐)输入localhost:8080,localhost可以是本机的ip,也可以是计算机名。就可以打开jenkins
第二种方法是用tomcat打开
解压tomcat到某个目录,如/usr/local,进入tomcat下的/bin目录,启动tomcat
将jenkins.war文件放入tomcat下的webapps目录下,启动tomcat时,会自动在webapps目录下建立jenkins目录,所以在地址栏上需要输入的地址于上一种方法有点不一样。
 
什么是ci
就是持续集成
什么是cd
就是持续支付,持续部署
持续集成:就是开发提交了新代码之后,立刻进行构建、(单元)测试。根据测试结果,测试过程可以确定新代码和原有代码能否正确地集成在一起,如果测试过程有问题,那么将返回代码给开发部门
持续交付:在持续集成的基础上,将集成后的代码部署到更贴近于真实的生产环境中。在贴近真实的生成环境中,可以提高数据支撑,且进一步做测试,如果进一步测试没有问题,那么可以部署到线上的生成环境中
持续部署:是在持续交付的基础上,把部署到生产环境的过程自动化,实现部署无需人工参与,如何在部署的过程中出现问题,将立即回滚代码
有了Jenkins之后,开发人员写好代码,不需要自己进行源码编译、打包等工作,直接将代码分支存放在SVN、GIT仓库即可,运维人员只需要在Jenkins平台将代码构建,部署,和测试。减少人工干预的错误率,同时解放运维人员繁杂的上传代码、手动备份、更新。在Jenkins平台上,运维人员可以实现自动构建过程,包括自动编译、分发、部署和测试

 

第一种方式安装jenkins

1:创建镜像仓库(如果不需要检测镜像的完整性,那么可以编辑/etc/yum.repos.d/jenkins.repo文件,设置 gpgcheck=0 即可)
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
 
2:yum 安装(无需配置Tomcat容器,自大jetty容器)
yum install jenkins
 
3:查看jenkins所提供的文件
[root@7 ~]# rpm -ql jenkins
/etc/init.d/jenkins
/etc/logrotate.d/jenkins
/etc/sysconfig/jenkins
/usr/lib/jenkins
/usr/lib/jenkins/jenkins.war
/usr/sbin/rcjenkins
/var/cache/jenkins
/var/lib/jenkins
/var/log/jenkins
 
4:直接运行Jenkins
service jenkins start
 
5:在浏览器访问Jenkins,在/var/lib/jenkins/secrets/initialAdminPassword文件中拷贝需要的密钥,登入Jenkins,在Jenkins平台安装构建,发布,部署所依赖的插件
http://192.168.43.10:8080

第二种方式安装jenkins

1:直接在官网下载Jenkins的war包
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.73.2/jenkins.war
 
2:直接使用jvm运行Jenkins
java -jar jenkins.war &
 
3:使用浏览器访问,与RPM包安装过程一样
http://192.168.43.11:8080

第三种方式安装jenkins(在tomcat容器中部署jenkins)

0:安装openjdk的devel包
yum install -y java-1.8.0-openjdk-devel
 
1:也可以不使用自带的jetty容器,使用Tomcat容器运行Jenkins,安装JDK
vi /etc/profile.d/java.sh,添加如下配置
export JAVA_HOME=/usr
 
2:下载Tomcat
wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.0.47/bin/apache-tomcat-8.0.47.tar.gz
tar xf apache-tomcat-8.0.47.tar.gz -C /usr/local
ln -s /usr/local/apache-tomcat-8.0.47 /usr/local/tomcat
vi /etc/profile.d/tomcat.sh, 添加如下配置
CATALINA_BASE=/usr/local/tomcat
PATH=$CATALINA_BASE/bin:$PATH
export PATH CATALINA_BASE
 
3:下载Jenkins的war包
wget http://mirrors.jenkins.io/war-stable/1.651.3/jenkins.war
 
4:部署Jenkins,这里我就不演示如何通过管理界面部署Tomcat的APP程序,这里直接将war包解压到部署目录即可,在/usr/local/tomcat/webapps目录下创建一个Jenkins目录
mkdir /usr/local/tomcat/webapps/jenkins
cp jenkins.war /usr/local/tomcat/webapps/jenkins
cd /usr/local/tomcat/webapps/jenkins
jar xf jenkins.war
 
5:启动Tomcat,可以查看Tomcat的日志,看看Jenkins是否被部署成功
catalina.sh start
tail -100f /usr/local/tomcat/logs/catalina.out
 
6:在浏览器访问
http://192.168.43.12:8080/jenkins/
7:直接使用jvm运行Jenkins
java -jar jenkins.war &
 
准备三个虚拟机,这是第二个虚拟机
 
 
第一个虚拟机按照上面的第三种方法安装
首先管理插件进去,可选插件安装3.0版本
 然后配置信息
 
 

cd /usr/local/maven/bin

ll

./mvn -v  复制路径

 
 

别名和路径

  ll /usr/local/maven/bin/mvn
 
 保存,退出
 
 
 
 
 
 
 
 
第二个虚拟机安装
1:安装openjdk的devel包
yum install -y java-1.8.0-openjdk-devel
 
2:也可以不使用自带的jetty容器,使用Tomcat容器运行Jenkins,安装JDK
vi /etc/profile.d/java.sh,添加如下配置
export JAVA_HOME=/usr
. /etc/profile.d/java.sh
 
3:下载maven的二进制包
wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz
 
4:解压到对应的目录
tar xf apache-maven-3.5.2-bin.tar.gz -C /usr/local/
ln -s /usr/local/apache-maven-3.5.2 /usr/local/maven
 
5:在maven的安装目录下,有个/usr/local/maven/bin/mvn工具,这个工具是用于编译源码、构建、打包的。Jenkins就是将maven集成到自己的平台上对源码进行编译、构建、打包的
ll /usr/local/maven/bin/mvn
 
搭建SVN
# 安装
yum install -y subversion
 
# 创建一个版本库,取名为java, subversion默认以/var/svn作为代码的根目录,如何需要修改可以在/etc/sysconfig/svnserve文件中修改
mkdir /var/svn
svnadmin create /var/svn/java
 
# 编辑/var/svn/java/conf/passwd文件,新增两个用户
[users]
uplooking = 123456
home = 123456
 
# 编辑/var/svn/java/conf/authz文件,给用户授权,添加如下内容,表示uplooking用户对整个版本库有读写权限,home用户对整个版本库有读权限
[/]
uplooking = rw
home = r
 
# 编辑/var/svn/java/conf/svnserve.conf文件,配置如下内容
non-access = none // 非授权用户没有权限
auth-access = write // 授权用户有写权限,但是必须参考authz文件的设定
password-db = passwd // 指定有权的用户
authz-db = authz // 指定有权的用户的权限
realm = java // 指定登入之后显示的提示信息
 
# 启动svn服务器, 查看3690 端口是否已经监听
systemctl start svnserve.service
 
# 安装httpd,实现svn版本库可以通过http协议被访问
yum install -y httpd httpd-devel mod_dav_svn
 
# 编辑/etc/httpd/conf.modules.d/00-dav.conf文件,添加
LoadModule dav_lock_module modules/mod_dav_lock.so
LoadModule dav_svn_module modules/mod_dav_svn.so
 
# 编辑/etc/httpd/conf/httpd.conf文件,在文件的末尾位置添加
<Location /svn>
# 启用svn模块
DAV svn
# 启用svn的根路径
SVNListParentPath on
# 指定svn的根路径
SVNParentPath /var/svn
# 指定认证为basic认证
AuthType Basic
# 指定认证的提示
AuthName "Authorization"
# 指定认证的用户密码文件
AuthUserFile /etc/httpd/.svnpasswd
# 需要合法的用户才能访问
Require valid-user
</Location>
 
# 设置basic用户名和密码
htpasswd -c -m /etc/httpd/.svnpasswd uplooking
 
# 启动httpd
systemctl start httpd
 
# 让httpd访问svn的数据目录时候有权限
chown -R apache.apache /var/svn/
 
# 浏览器访问:
http://192.168.43.11/svn/
 
 安装小乌龟
首先svn  checkout  右键
 生成空文件
 

右键添加源码包到svn上面

 新建项目

这个用户是在httpd时候的用户

保存退出

在这里面有var包的路径,然后新开一台虚拟机,然后将包拷贝到另一台虚拟机上面,

  yum install -y java-1.8.0-openjdk-devel
  ll
  du -sh edu.war 
  mkdir edu
  ll
  cd edu/
  ll
 jar xf /root/edu.war 
  ll
  yum install -y tomcat
  cd
  cp edu.war /var/lib/tomcat/webapps/
  ll /var/lib/tomcat/webapps/
 systemctl start tomcat.service
  tail -100f /var/log/tomcat/catalina.2017-11-06.log 

第三台虚拟机的操作

 
对于发的内容,请大神指点。
原文地址:https://www.cnblogs.com/gongll/p/7794789.html