jenkins部署
Posted nineep
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jenkins部署相关的知识,希望对你有一定的参考价值。
基础环境
建议使用jdk1.5以上版本 (这里不做jdk安装讲解,去官网下载jdk下载地址)
下载(jdk-7u45-Linux-x64.tar.gz版本)
jenkins安装
执行以下命令:
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
sudo yum install jenkins
安装完成后启动jenkins
sudo service jenkins restart // 重启
sudo service jenkins stop //停止
找到jenkins.war的位置 ( 一般默认在 /usr/lib/jenkins 下 )
执行Java -jar jenkins.war 在浏览器地址栏输入 ip地址+端口就可以进行访问了( 端口默认8080 )
访问时常见问题:
1.由于防火墙未关闭导致访问失败
( centos7下防火墙关闭命令: systemctl stop firewalld.service //停止firewall
systemctl disable firewalld.service //禁止firewall开机启动)
2.由于默认80端口被占用导致访问失败
执行 vi /etc/sysconfig/jenkins (修改jenkins文件中的端口,默认8080,我这里把改成8182了)
访问成功出现的页面: (我这里是已经创建了一个项目了)
maven安装
下载地址
版本 apache-maven-3.0.4-bin.tar.gz
tar -xvf apache-maven-3.0.4-bin.tar.gz
mv apache-maven-3.0.4 /usr/local/apache-maven
文件存放好之后,设置环境变量,打开etc/profile,在文件中加入下边的代码:
写入环境变量
vi /etc/profile
最后一行加入
这个前提是安装了java1.*
export JAVA_HOME=/usr/local/jdk1.*
export MAVEN_HOME=/usr/local/apache-maven
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$MAVEN_HOME/bin:$PATH
再执行
source /etc/profile
执行 mvn -help 可查看具体操作命令
Git安装
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
yum install git
git --exec-path 查看git位置( 后面jenkins配置需要用到 ,我的位置 : /usr/libexec/git-core )
===============================================================================================================
好了,到这里基本环境已经搭建好了,如果想让jenkins听从你的指挥 , 进行项目的自动化构建和部署需要进行以下具体配置了:
1.先去下载常用的插件( jenkins master需要几个常用的插件,在“可选插件”中,建议将如下列表插件选中并安装: )
安装完成后重启jenkins.
2.在jenkins的“系统管理”-->“系统设置”页面,来设定全局的配置,其中重要的3个选项位Git,JDK和Maven,
我们需要配置它们的安装位置.
3.接下来我们设置 Global credentials (我这里设置的是用户名密码方式登录 , 即git的账号密码 )
4.下一步,我们新建一个项目
1.
2.
3.
4.
5.
以上是jenkins构建一个maven项目的相关配置
配置时几点注意事项:
1.在jenkins和git进行下载代码的时候,还需要用git生成公钥,然后在git账户里去配置公钥信息(具体生成方法和配置方法在下一节讲解)
2.在图4配置构建后操作的时候,需要设置tomcat的用户和密码,tomcat默认是没有的,需要去改tomcat-user.xml去配置(具体配置方法下一节讲解)
最后点击保存就完成了一个项目的构建配置了( 点击构建后, jenkins会将maven编译打包好的war文件放到tomcat下的webapp目录下 ),这样就完成了.
上节还有一些问题没有详细的讲解,这里具体说下:
1. 再Git上配置ssh Keys ( 其实在git用户中会有说明如何去生成的,这里把写出来下,方便大家 )
SSH key 可以让你在你的电脑和 Git @ OSC 之间建立安全的加密连接。
你可以按如下命令来生成sshkey
ssh-keygen -t rsa -C "[email protected]"# Creates a new ssh key using the provided email
# Generating public/private rsa key pair...
查看你的public key,并把他添加到 Git @ OSC http://git.oschina.NET/keys
cat ~/.ssh/id_rsa.pub
# ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....
添加后,在终端(Terminal)中输入
ssh -T [email protected].Net
若返回
Welcome to [email protected], yourname!
则证明添加成功。
2.配置tomcat的用户名称和密码( 默认是不需要密码的,这里jenkins需要链接tomcat进行项目部署,所以需要用户名和密码 )
Tomcat Manager是Tomcat自带的、用于对Tomcat自身以及部署在Tomcat上的应用进行管理的web应用。Tomcat是Java领域使用最广泛的服务器之一,因此Tomcat Manager也成为了使用非常普遍的功能应用。
在默认情况下,Tomcat Manager是处于禁用状态的,需要我们进行相应的用户配置之后才能使用Tomcat Manager。
Tomcat Manager的用户配置是在Tomcat安装目录/conf/tomcat-users.xml文件中进行管理的。
我们只需要在tomcat-users节点中配置相应的role(角色/权限)和user(用户)即可。一个user节点表示单个用户,属性username和password分别表示登录的用户名和密码,属性roles表示该用户所具备的权限。
user节点的roles属性值与role节点的rolename属性值相对应,表示当前用户具备该role节点所表示的角色权限。当然,一个用户可以具备多种权限,因此属性roles的值可以是多个rolename,多个rolename之间以英文逗号隔开即可。
rolename的属性值并不是随意的内容,否则Tomcat怎么能够知道我们随便定义的rolename表示什么样的权限呢。Tomcat已经为我们定义了4种不同的角色,我们只需要使用Tomcat为我们定义的这几种角色就足够满足我们的工作需要了。
以下是Tomcat Manager 4种角色的大致介绍(下面URL中的*为通配符):
manager-gui
允许访问html接口(即URL路径为/manager/html/*)
manager-script
允许访问纯文本接口(即URL路径为/manager/text/*)
manager-jmx
允许访问JMX代理接口(即URL路径为/manager/jmxproxy/*)
manager-status
允许访问Tomcat只读状态页面(即URL路径为/manager/status/*)
后续遇到的问题及解决方案会写续文...
以上是关于jenkins部署的主要内容,如果未能解决你的问题,请参考以下文章