一、实验环境
主机名 | IP地址 |
---|---|
jenkins | 39.98.122.193 |
git | 49.232.149.234 |
web | 39.96.7.141 |
二、jenkins安装
- jenkins安装需要Java环境
#查看JDK可以安装那些版本
yum search openjdk
#安装JDK环境
yum -y install java-1.8.0-openjdk
#查看JDK版本信息
java -version
openjdk version "1.8.0_232"
OpenJDK Runtime Environment (build 1.8.0_232-b09)
OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode)
- 准备jenkins的repo源
#下载jenkins的repo源
wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
#准备jenkins安装需要的key
rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
#开始安装jenkins
yum install jenkins
#启动jenkins服务
systemctl restart jenkins
[root@jenkins ~]# netstat -lnupt | grep 8080
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 9673/java
- 通过网站访问jenkins
因为使用阿里云ECS实例搭建,需要配置阿里云上防火墙,开通8080端口
通过网页访问jenkins主机
提示输入密码,及密码存放位置
cat /var/lib/jenkins/secrets/initialAdminPassword #查看密码
2daa5a87adee42589507381fa291ed23
输入密码点击继续
- 安装jenkins插件
安装完成之后点继续
出现创建用户界面,创建登录用户和密码
根据创建的用户名和密码登录
三、登录后配置
点击纠正,安装一下出错的插件
安装完成,重启jenkins
- jenkins必要插件检查
在可选插件中过滤,Publish Over SSH、Maven Integration
-
配置jenkins并发数量
-
配置邮箱地址
四、基于jenkins自动打包并部署Tomcat
- 配置git主机服务端
#安装git
yum -y install git
#创建git用户
useradd git
echo "tian1998@" | passwd --stdin git
Changing password for user git.
passwd: all authentication tokens updated successfully.
#切换用户创建项目目录
su -git
su: group it does not exist
#创建项目目录
mkdir probe.git
cd probe.git/
#初始化项目目录
git --bare init
Initialized empty Git repository in /root/probe.git/ #提示这是个空库
- 配置git主机客户端,模拟开发代码上传
git clone https://github.com/psi-probe/psi-probe #克隆一个GitHub上的开源项目
git clone git@172.21.0.4:/home/git/probe.git #克隆远程仓库
cp -fr psi-probe/* probe.git/ #将克隆下的代码复制到工作区
#配置本地仓库邮箱和用户名
git config --global user.email "jialiang@163.com"
git config --global user.user "jialiang
#将代码传入缓存区
git add .
#将代码传入本地仓库
git commit -m "all probe"
#将代码发布到远程仓库
git push origin master
- jenkins上配置验证凭据(通过凭证通告web主机,你可以下载项目了)
- 添加publish Over SSH远程主机(项目上线主机)
#在web主机上创建远程目录
mkdir /data
点击保存
- 配置Maven、JDK、Git环境
[root@jenkins ~]# ls
jdk-8u191-linux-x64.tar.gz
[root@jenkins ~]# tar xf jdk-8u191-linux-x64.tar.gz
[root@jenkins ~]# ls
jdk1.8.0_191 jdk-8u191-linux-x64.tar.gz
[root@jenkins ~]# mv jdk1.8.0_191/ /usr/local/java
ln -s /usr/local/java/bin/* /usr/local/bin/
[root@jenkins ~]# java -version
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
Maven
ls
apache-maven-3.5.0-bin.tar.gz jdk-8u191-linux-x64.tar.gz
[root@jenkins ~]# tar xf apache-maven-3.5.0-bin.tar.gz
[root@jenkins ~]# mv apache-maven-3.5.0 /usr/local/maven
[root@jenkins ~]# vim /usr/local/maven/conf/settings.xml
<mirrors>
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
git配置
#使用yum安装git
yum -y install git
which git
/usr/bin/git
在这里插入代码片
- web主机配置
#配置密钥对
ssh-keygen
ssh-copy-id 39.98.122.193
- 配置Maven项目,实现代码上传
#利用jenkins用户上传给git主机的git用户上
su -s /bin/bash jenkins
ssh-keygen
ssh-copy-id git@49.232.149.234
构建后操作选择
/usr/local/tomcat/bin/shutdown.sh
scp 39.98.122.193:/var/lib/jenkins/workspace/Tomcat-java/web/target/probe.war /usr/local/tomcat/webapps/
/usr/local/tomcat/bin/startup.sh
- 开始上传项目