Jenkins部署tomcat
编译环境
1.部署maven编译环境(在Jenkins服务器上部署)
#1.下载maven
[root@jenkins opt]# wget https://mirrors.aliyun.com/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
#2.解压
[root@jenkins opt]# tar -xf apache-maven-3.6.3-bin.tar.gz -C /usr/local/
#3.查看java版本
[root@jenkins opt]# java -version
openjdk version "1.8.0_282"
OpenJDK Runtime Environment (build 1.8.0_282-b08)
OpenJDK 64-Bit Server VM (build 25.282-b08, mixed mode)
#4.添加环境变量
[root@jenkins opt]# vim /etc/profile
export MAVEN_HOME=/usr/local/apache-maven-3.6.3
export PATH=$MAVEN_HOME/bin:$PATH
#5.重载环境变量,测试mvn
[root@jenkins opt]# source /etc/profile
[root@jenkins opt]# mvn --version
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /usr/local/apache-maven-3.6.3
Java version: 1.8.0_282, vendor: Red Hat, Inc., runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.282.b08-1.el7_9.x86_64/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-693.el7.x86_64", arch: "amd64", family: "unix"
2.配置Jenkins+maven
- 配置JDK
- 配置maven环境变量
- 安装maven插件
- 创建新项目
- 将源代码上传到仓库(master服务器)
#1.下载远程仓库
[root@gdx1 ~]# git clone http://192.168.12.40/technology-department/jenkins-tomcat.git
正克隆到 'jenkins-tomcat'...
Username for 'http://192.168.12.40': root
Password for 'http://root@192.168.12.40':
remote: Enumerating objects: 7, done.
remote: Counting objects: 100% (7/7), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 7 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (7/7), done.
#2.将源代码压缩包传到下载的仓库内并解压
[root@gdx1 ~]# rz -E
rz waiting to receive.
[root@gdx1 ~]# unzip chenyang0910-springboot-master.zip
[root@gdx1 ~]# mv springboot/ jenkins-tomcat/
[root@gdx1 ~]# cd jenkins-tomcat/
[root@gdx1 jenkins-tomcat]# ll
总用量 4
-rw-r--r-- 1 root root 23 4月 18 15:34 README.md
drwxr-xr-x 4 root root 90 4月 15 20:24 springboot
#3.将源代码上传到远程仓库
[root@gdx1 jenkins-tomcat]# git add springboot/
[root@gdx1 jenkins-tomcat]# git commit -m "init" .
[master e2c9ce8] init
12 files changed, 749 insertions(+)
create mode 100644 springboot/.gitignore
create mode 100644 springboot/.mvn/wrapper/MavenWrapperDownloader.java
create mode 100644 springboot/.mvn/wrapper/maven-wrapper.jar
create mode 100644 springboot/.mvn/wrapper/maven-wrapper.properties
create mode 100755 springboot/mvnw
create mode 100644 springboot/mvnw.cmd
create mode 100644 springboot/pom.xml
create mode 100644 springboot/src/main/java/com/example/gitlab/GitLabApplication.java
create mode 100644 springboot/src/main/java/com/example/gitlab/ServletInitializer.java
create mode 100644 springboot/src/main/java/com/example/gitlab/controller/HelloWorldController.java
create mode 100644 springboot/src/main/resources/application.properties
create mode 100644 springboot/src/test/java/com/example/gitlab/GitLabApplicationTests.java
[root@gdx1 jenkins-tomcat]# git push -u origin master
Username for 'http://192.168.12.40': root
Password for 'http://root@192.168.12.40':
Counting objects: 31, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (22/22), done.
Writing objects: 100% (30/30), 53.20 KiB | 0 bytes/s, done.
Total 30 (delta 0), reused 0 (delta 0)
To http://192.168.12.40/technology-department/jenkins-tomcat.git
6c1e5c9..e2c9ce8 master -> master
分支 master 设置为跟踪来自 origin 的远程分支 master。
- 创建maven仓库(Jenkins服务器)
#1.创建maven仓库
[root@jenkins ~]# mkdir -pv /data/software/repository
mkdir: 已创建目录 "/data"
mkdir: 已创建目录 "/data/software"
mkdir: 已创建目录 "/data/software/repository"
[root@jenkins ~]# chown jenkins.jenkins /data/software/repository/
#2.修改配置文件
[root@jenkins ~]# vim /usr/local/apache-maven-3.6.3/conf/settings.xml
<!--本地仓库-->
<localRepository>/data/software/repository</localRepository>
<mirrors>
<!--阿里云镜像-->
<mirror>
<id>aliyun-maven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven mirror</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
</mirrors>
- 测试maven仓库
选择标签开始构建(第一次编译时间稍长)
[root@jenkins ~]# ll /var/lib/jenkins/workspace/jenkins部署tomcat项目/springboot/
总用量 24
-rwxr-xr-x 1 jenkins jenkins 10070 4月 16 13:52 mvnw
-rw-r--r-- 1 jenkins jenkins 6608 4月 16 13:52 mvnw.cmd
-rw-r--r-- 1 jenkins jenkins 1664 4月 16 13:52 pom.xml
drwxr-xr-x 4 jenkins jenkins 30 4月 16 13:52 src
drwxr-xr-x 10 jenkins jenkins 266 4月 16 14:12 target #编译成功后生成的
运行环境
1.安装tomcat
#1.下载
[root@gdx1 ~]# yum install java-1.8.0-openjdk* -y
[root@gdx1 ~]# wget https://ftp.wayne.edu/apache/tomcat/tomcat-9/v9.0.45/bin/apache-tomcat-9.0.45.tar.gz
[root@gdx1 ~]# tar -xf apache-tomcat-9.0.45.tar.gz -C /usr/local/
[root@gdx1 ~]# /usr/local/apache-tomcat-9.0.45/bin/startup.sh #启动tomcat
Using CATALINA_BASE: /usr/local/apache-tomcat-9.0.45
Using CATALINA_HOME: /usr/local/apache-tomcat-9.0.45
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-9.0.45/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/apache-tomcat-9.0.45/bin/bootstrap.jar:/usr/local/apache-tomcat-9.0.45/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
#2.验证启动端口
[root@gdx1 ~]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp6 0 0 :::8080 :::* LISTEN 116492/java
2.配置tomcat权限
[root@gdx1 ~]# vim /usr/local/apache-tomcat-9.0.45/conf/tomcat-users.xml
#插入到倒数第二行
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script,tomcat,admin-gui,admin-script"/>
[root@gdx1 ~]# vim /usr/local/apache-tomcat-9.0.45/webapps/manager/META-INF/context.xml
#注释掉这段内容
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
#重启
[root@gdx1 ~]# /usr/local/apache-tomcat-9.0.45/bin/shutdown.sh
Using CATALINA_BASE: /usr/local/apache-tomcat-9.0.45
Using CATALINA_HOME: /usr/local/apache-tomcat-9.0.45
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-9.0.45/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/apache-tomcat-9.0.45/bin/bootstrap.jar:/usr/local/apache-tomcat-9.0.45/bin/tomcat-juli.jar
Using CATALINA_OPTS:
[root@gdx1 ~]# /usr/local/apache-tomcat-9.0.45/bin/startup.sh
Using CATALINA_BASE: /usr/local/apache-tomcat-9.0.45
Using CATALINA_HOME: /usr/local/apache-tomcat-9.0.45
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-9.0.45/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/apache-tomcat-9.0.45/bin/bootstrap.jar:/usr/local/apache-tomcat-9.0.45/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
[root@gdx1 ~]# cd /usr/local/apache-tomcat-9.0.45/
[root@gdx1 apache-tomcat-9.0.45]# ll
总用量 128
drwxr-x--- 2 root root 4096 4月 18 19:01 bin
-rw-r----- 1 root root 18984 3月 30 18:29 BUILDING.txt
drwx------ 3 root root 254 4月 18 19:24 conf
-rw-r----- 1 root root 5587 3月 30 18:29 CONTRIBUTING.md
drwxr-x--- 2 root root 4096 4月 18 19:01 lib
-rw-r----- 1 root root 57092 3月 30 18:29 LICENSE
drwxr-x--- 2 root root 197 4月 18 19:06 logs
-rw-r----- 1 root root 2333 3月 30 18:29 NOTICE
-rw-r----- 1 root root 3257 3月 30 18:29 README.md
-rw-r----- 1 root root 6898 3月 30 18:29 RELEASE-NOTES
-rw-r----- 1 root root 16507 3月 30 18:29 RUNNING.txt
drwxr-x--- 2 root root 30 4月 18 19:01 temp
drwxr-x--- 7 root root 81 3月 30 18:29 webapps
drwxr-x--- 3 root root 22 4月 18 19:06 work
[root@gdx1 apache-tomcat-9.0.45]# cd webapps/
[root@gdx1 webapps]# ll
总用量 4
drwxr-x--- 15 root root 4096 4月 18 19:01 docs
drwxr-x--- 7 root root 99 4月 18 19:01 examples
drwxr-x--- 6 root root 79 4月 18 19:01 host-manager
drwxr-x--- 6 root root 114 4月 18 19:01 manager
drwxr-x--- 3 root root 223 4月 18 19:01 ROOT
3.配置Jenkins操作tomcat
安装插件
配置构建过程===》添加构建后操作