#关闭防火墙
stop_firewalld(){
systemctl stop firewalld
sed -ri '/^SELINUX=/c SELINUX=disabled' /etc/sysconfig/selinux
setenforce 0
systemctl disable firewalld
systemctl status firewalld
}
#环境变量配置
JAVA_HOME=/usr/local/jdk
export M2_HOME=/usr/local/maven
export M2=$M2_HOME/bin
CATALINA_HOME=/usr/local/tomcat
export CATALINA_HOME
export PATH=$M2:$PATH:$JAVA_HOME/bin:/usr/local/git/bin
1.配置hosts(Jenkins client)
cat >> /etc/hosts <<eof
192.168.44.44 jenkins
192.168.44.45 client
}
eof
2.安装依赖包(Jenkins)
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker -y
3.安装git(Jenkins)
tar -xvf git-2.9.5.tar.gz
cd git-2.9.5
make prefix=/usr/local/git all
make prefix=/usr/local/git install
#修改环境变量:
vim /etc/bashrc 或 ~/.bash_profile
#最后一行添加
export PATH=$PATH:/usr/local/git/bin
#生效配置文件
source /etc/bashrc
#查看是否安装成功
git --version
4.安装jdk1.9以上并卸载openjdk(jenkins)
#卸载openjdk
rpm -qa|grep java
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.9-2.3.4.1.el6_3.i686
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5.el6_3.i686
rpm -qa|grep java
#安装jdk1.9
tar xvzf jdk-8u.... -C /usr/local/
cd /usr/local/
mv jdk1.8u... jdk
vim /etc/bashrc
JAVA_HOME=/usr/local/jdk
export PATH=$PATH:$JAVA_HOME/bin
#生效配置文件
source /etc/bashrc
#查看是否安装成功
java -version
5.部署Maven(jenkins)
#官方下载地址:http://mirror.bit.edu.cn/apache/maven/maven-3/3.5.3/binaries/
tar xvzf apache-maven-3.5.3-bin.tar.gz -C /usr/local/
mv /usr/local/apache-maven-3.5.3/ /usr/local/maven
修改环境变量:
export M2_HOME=/usr/local/maven
export M2=$M2_HOME/bin
#生效配置文件
source /etc/bashrc
#测试maven是否安装成功:
mvn -version
6.部署tomcat(jenkins)
#解压部署:
tar xvzf apache-tomcat-9.0.1.tar.gz -C /usr/local/
mv /usr/local/apache-tomcat-9.0.1/ /usr/local/tomcat
CATALINA_HOME=/usr/local/tomcat
export CATALINA_HOME
source /etc/bashrc
7.部署jenkins(jenkins)
开发 打包 测试 发布 war不用自己解压 放到tomcat/usr/local/tomcat/webapps/会自动解压
Jenkins 除了开发外所有的事
开发(git客户端)--》git主库--》jenkins(安装有git客户端git + jdk + tomcat + maven打包+测试) 测试 发布到tomcat服务器
jenkins 自带插件 最好写脚本比较灵活
ci/cd
官网下载jenkins:
http://updates.jenkins-ci.org/download/war/
软件名称:
jenkins.war
#部署jenkins.war到tomcat下
cp jenkins.war /usr/local/tomcat/webapps/
#启动tomcat: 注意启动tomcat会自动解压webapps下的war包
/usr/local/tomcat/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/jdk
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
#关闭tomcat
/usr/local/tomcat/bin/shutdown.sh
8.在火狐浏览器登陆jenkins
http://192.168.44.44:8080/jenkins/
cat /root/.jenkins/secrets/initialAdminPassword
9.安装插件(火狐浏览器)
3个必须的插件:
GIT plugin (可能已经默认安装了)
Publish Over SSH (远程Shell)
Maven Integration
安装插件Deploy to container:
作用:
支持自动化将代码部署到tomcat容器
安装插件:Maven Integration
作用:
jenkins 利用maven编译,打包,所需插件
安装git相关插件,安装过程同第一个插件:
GIT plugin(初始化安装了)
GitHub Authentication plugin
GitHub Branch Source Plugin (初始化安装了)
GitHub Organization Folder Plugin
检查已安装好的插件GIT plugin,如果没有进行安装,和上边的步骤一样
10.配置的有jdk maven 和git(火狐浏览器)
#系统管理->Global Tool Configuration,配置jdk,git,maven的根目录
jdk 配置
别名:jdk
java_home /usr/local/jdk/
git
Name Default
path to git executable /usr/bin/git
maven
name maven
maven_home /usr/local/maven
11.配置ssh相关的配置(火狐浏览器)
系统管理-》全局设置
yum provides /*bin/ssh-copy-id (jenkins)
yum -y install openssh-clients (jenkins)
配置publish over ssh:
Passphrase:密码(key的密码,如果你设置了)
Path to key:key文件(私钥)的路径(下面的key和这个2选1)
Key:将私钥复制到这个框中(jenkins电脑 /root/.ssh/id_rsa 私钥钥)
Disable exec:禁止运行命令
这里的私钥是jenkins服务上root账户的私钥,需要事先先把公钥传给下面设置的被远程ssh的server
在jenkins上,我这里实际操作的是一台远程机器名字client,地址192.168.44.45,只是作为例子
[root@server .ssh]# ssh-copy-id (jenkins)
[root@server .ssh]# ssh 192.168.44.45 (jenkins)
12.创建一个maven任务
在192.168.44.45根下 mkdir -pv /jenkins/{war,sh}
echo "/jenkins/war/*.war /jenkins/ " > /jenkins/sh/deploy.sh
并将war包放入/jenkins/war/里[192.168.44.45]
这里使用公有仓库:公有仓库可以不用配置credentials,
注:私有仓库的使用见--“1个完整创建任务过程”下图填写的
是一个应用的github地址:
https://github.com/bingyue/easy-springmvc-maven
name client
source files target/*.war
remove prefix target
remote directory /jenkins/war
exec command /jenkins/sh/deploy.sh
14.去client上查看结果:
[root@server .ssh]# ssh 192.168.44.45
Last login: Wed May 23 01:06:14 2018 from 10.0.0.154
[root@git1 ~]# cd /jenkins/
[root@git1 jenkins]# ls
easy-springmvc-maven.war sh war
13.重装安装jenkins(jenkins)当出错可以重装
重装只需要删除安装jenkins用户的主目录(~)下的(.jenkins)文件夹,
然后重启,就可以重新配置jenkins
rm -rf ~/.jenkins