Jenkins部署Java
编译环境(Jenkins服务器):192.168.15.61
部署环境(web服务器):192.168.15.31
编译环境
1、部署maven编译环境
## 编译环境(jenkins服务器上部署)
[root@jenkins01 opt]# wget https://mirrors.aliyun.com/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
--2021-04-15 23:26:14-- https://mirrors.aliyun.com/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
Resolving mirrors.aliyun.com (mirrors.aliyun.com)... 42.236.78.212, 42.236.78.210, 42.236.78.207, ...
Connecting to mirrors.aliyun.com (mirrors.aliyun.com)|42.236.78.212|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9506321 (9.1M) [application/octet-stream]
Saving to: ‘apache-maven-3.6.3-bin.tar.gz.1’
100%[================================================================>] 9,506,321 9.87MB/s in 0.9s
2021-04-15 23:26:15 (9.87 MB/s) - ‘apache-maven-3.6.3-bin.tar.gz.1’ saved [9506321/9506321]
##解压制作环境变量
[root@jenkins01 opt]#tar -xf apache-maven-3.6.3-bin.tar.gz -C /usr/local/
[root@jenkins01 opt]# vim /etc/profile
export MAVEN_HOME=/usr/local/apache-maven-3.6.3
export PATH=$MAVEN_HOME/bin:$PATH
[root@jenkins01 opt]# source /etc/profile
# 测试mvn
[root@jenkins01 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: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-1127.el7.x86_64", arch: "amd64", family: "unix"
2、配置Jenkins + maven
2.1 配置JDK
2.2 配置maven环境变量
感谢您下载此版本的Java平台标准版开发工具包(JDK)。 JDK是一个使用Java编程语言构建应用程序,applet和组件的开发环境。
JDK包括用于开发和测试用Java编程语言编写并在Java平台上运行的程序的工具
2.3安装maven插件
3、创建代码仓库
3.1先做免密(关于gitee仓库和我们的Jenkins服务器)
[root@jenkins01 ~]# cat /root/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDrdj9lQNq5YWv8vEFVcjIrPdvoo1nYnrP/jzjr+otsJbw4vCgapwcM2ZgNClAMWBcjOU3e7GekC4nHssEecCZnC5Itx6RqlubDthU769gj5/2/V8ocCJCOYFGMtk9WmiG6A2V0+5PXgOQabh+uxg9JFXS3k7v9puyjQwfklLhMv5TYu6EA4IeO+dqTGz+t0Wa14OAHJWIdmQRh4GkbEIlu7s3T/joQCQa20MLRINJfOO/icDi+BRQQLfh+QGLiypH2VxuOFW0Q1l/xc+GArcFa6zASyL6HBx73HFMukHz3cU15i4MxJKd/VUUx4C+u05pzw9UVTFxp58HwwyR3GOVB root@jenkins01
##讲再gitee上设置好的仓库tomcat拉下来(最好是空的)
[root@jenkins01 ~]# git clone git@gitee.com:xianbei-pillar/tomcat.git
正克隆到 'tomcat'...
warning: 您似乎克隆了一个空版本库。
##跳到仓库tomcat立面操作
[root@jenkins01 ~]# cd tomcat/
##上传解压关于jara的框架springboot
[root@jenkins01 tomcat]# cp /opt/chenyang0910-springboot-master.zip .
[root@jenkins01 tomcat]# ll
总用量 60
-rw-r--r-- 1 root root 57688 4月 21 01:08 chenyang0910-springboot-master.zip
[root@jenkins01 tomcat]# unzip chenyang0910-springboot-master.zip
[root@jenkins01 tomcat]# ll
总用量 60
-rw-r--r-- 1 root root 57688 4月 21 01:08 chenyang0910-springboot-master.zip
drwxr-xr-x 4 root root 90 4月 15 20:24 springboot
[root@jenkins01 tomcat]# git add springboot/
[root@jenkins01 tomcat]# git commit -m "first commit"
[root@jenkins01 tomcat]# git push -u origin master
Counting objects: 30, done.
Compressing objects: 100% (21/21), done.
Writing objects: 100% (30/30), 53.15 KiB | 0 bytes/s, done.
Total 30 (delta 0), reused 0 (delta 0)
remote: Powered by GITEE.COM [GNK-5.0]
To git@gitee.com:xianbei-pillar/tomcat.git
* [new branch] master -> master
分支 master 设置为跟踪来自 origin 的远程分支 master。
4、创建maven仓库
##创建相关目录
[root@jenkins01 ~]# mkdir -pv /root/data/software/repository
mkdir: 已创建目录 "data/software"
mkdir: 已创建目录 "data/software/repository"
[root@jenkins01 ~]# chown jenkins.jenkins /root/data/software/repository
##修改配置文件
[root@jenkins01 ~]# 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>
5、测试maven
##新建一个标签
##新建一个任务
##参数构建
##源代码管理
##构建 (重点: cd /var/lib/jenkins/workspace/jenkin-jara/springboot/)
##Jenkins连接上gitee里的stable-v3标签
##出现下面表示成功了
##编译结果也是后面部署结果
运行环境
1.安装tomcat和依赖(注意下面的机器都是换成192.168.15.31)
##
[root@k8s-master-01 local]# yum install java-1.8.0-openjdk* -y
[root@k8s-master-01 local]# wget https://ftp.wayne.edu/apache/tomcat/tomcat-9/v9.0.45/bin/apache-tomcat-9.0.45.tar.gz
[root@k8s-master-01 opt]# ll
-rw-r--r-- 1 root root 11486964 3月 30 18:46 apache-tomcat-9.0.45.tar.gz
[root@k8s-master-01 opt]# tar -xf apache-tomcat-9.0.45.tar.gz -C /usr/local/
[root@k8s-master-01 opt]# cd /usr/local/apache-tomcat-9.0.45/bin/
[root@k8s-master-01 bin]# ll
-rwxr-x--- 1 root root 1904 3月 30 18:29 startup.sh
[root@k8s-master-01 bin]# /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@k8s-master-01 bin]# netstat -lntp(证明Tomcat启动起来了)
tcp6 0 0 :::8080 :::* LISTEN 9911/java
##;tomcat
2.配置tomcat权限
[root@k8s-master-01 ~]# 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"/>
##注释掉只允许127.0.0.1可以访问,让大家都可以访问。在公司配Jenkins内网可以访问的就可以了
<!--<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="\d+\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /-->
[root@k8s-master-01 ~]# /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@k8s-master-01 ~]# /usr/local/apache-tomcat-9.0.45/bin/
catalina.sh configtest.sh digest.sh setclasspath.sh startup.sh version.sh
ciphers.sh daemon.sh makebase.sh shutdown.sh tool-wrapper.sh
[root@k8s-master-01 ~]# /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.
##登录tomcat管理页面
2.1 在这个目录下面对应的目录都和管理页面对应的目录一模一样
[root@k8s-master-01 examples]# cd /usr/local/apache-tomcat-9.0.45/webapps/
[root@k8s-master-01 webapps]# ll
总用量 4
drwxr-x--- 15 root root 4096 4月 20 19:57 docs
drwxr-x--- 7 root root 99 4月 20 19:57 examples
drwxr-x--- 6 root root 79 4月 20 19:57 host-manager
drwxr-x--- 6 root root 114 4月 20 19:57 manager
drwxr-x--- 3 root root 223 4月 20 19:57 ROOT
2.2 还是在webapps这个目录下examples/下我们echo一下,目录页面啥都有了。看下图
[root@k8s-master-01 webapps]# cd examples/
[root@k8s-master-01 examples]# ll
总用量 4
-rw-r----- 1 root root 1126 3月 30 18:29 index.html
drwxr-x--- 21 root root 290 4月 20 19:57 jsp
drwxr-x--- 2 root root 25 4月 20 19:57 META-INF
drwxr-x--- 4 root root 186 4月 20 19:57 servlets
drwxr-x--- 7 root root 82 4月 20 19:57 WEB-INF
drwxr-x--- 2 root root 103 4月 20 19:57 websocket
[root@k8s-master-01 examples]# echo "yuheiyang666" > index.html