• Tomcat


    Tomcat和Jenkins

    1. tomcat简介

    • tomcat是一个中间件,中间件:两者之间

    • Tomcat是个容器,是一个容纳Java程序的器皿

    • Tomcat是Apache 软件基金会的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。

    • Tomcat 技术先进、性能稳定,而且免费

    • Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序(Java程序开发的网站)的首选。

    • 还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式

    • Tomcat处理静态HTML的能力不如Apache服务器

    1.1 tomcat

    • tomcat是中间件之一,tomcat本身是一个容器,专门用来运行java程序,java语言开发的网页.jsp就应该运行于tomcat中。

    • tomcat本身的运行也依赖于jdk环境

    • jdk:是Java运行环境加上一些开发工具包

    • tomcat应用场景:lnmt

    2. tomcat项目部署

    2.1 java环境安装

    [root@node6 ~]# dnf -y install java-17-openjdk*
    [root@node6 ~]# java -version
    openjdk version "17.0.1" 2021-10-19 LTS
    OpenJDK Runtime Environment 21.9 (build 17.0.1+12-LTS)
    OpenJDK 64-Bit Server VM 21.9 (build 17.0.1+12-LTS, mixed mode, sharing)
    [root@node6 ~]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    2.2 tomcat部署

    [root@node6 ~]# wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.65/bin/apache-tomcat-9.0.65.tar.gz
    
    • 1

    2.3 部署

    [root@node6 ~]# ls
    anaconda-ks.cfg  apache-tomcat-9.0.65.tar.gz
    [root@node6 ~]# tar xf apache-tomcat-9.0.65.tar.gz -C /usr/local/
    [root@node6 ~]# cd /usr/local/
    [root@node6 local]# mv apache-tomcat-9.0.65 tomcat
    [root@node6 local]# ls
    bin  games    lib    libexec  share  tomcat
    etc  include  lib64  sbin     src
    [root@node6 local]# cd tomcat/
    [root@node6 tomcat]# ls
    BUILDING.txt     NOTICE         RUNNING.txt  lib   webapps
    CONTRIBUTING.md  README.md      bin          logs  work
    LICENSE          RELEASE-NOTES  conf         temp
    
    
    生成网页文件
    [root@node6 tomcat]# cd webapps/
    [root@node6 webapps]# ls
    ROOT  docs  examples  host-manager  manager
    [root@node6 webapps]# mkdir test
    [root@node6 webapps]# cd test
    [root@node6 test]# 
    [root@node6 test]# vim index.jsp 
    [root@node6 test]# cat index.jsp 
    <html>
    <head>
    <title>mushuang</title>
    </head>
    <body>
        <%
            out.println("Hellow World");
        %>
    </body>
    </html>
    [root@node6 test]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    2.3.1 启动
    [root@node6 ~]# echo 'export PATH=/usr/local/tomcat/bin:$PATH' > /etc/profile.d/tomcat.sh
    [root@node6 ~]# source /etc/profile.d/tomcat.sh
    [root@node6 ~]# source /etc/profile.d/tomcat.sh
    [root@node6 ~]# catalina.sh start
    Using CATALINA_BASE:   /usr/local/tomcat
    Using CATALINA_HOME:   /usr/local/tomcat
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
    Using CATALINA_OPTS:   
    Tomcat started.
    [root@node6 ~]# ss -antl
    State  Recv-Q Send-Q      Local Address:Port Peer Address:PortProcess                                                       
    LISTEN 0      128               0.0.0.0:22        0.0.0.0:*                                                                 
    LISTEN 0      1      [::ffff:127.0.0.1]:8005            *:*                                                                 
    LISTEN 0      100                     *:8080            *:*                                                                 
    LISTEN 0      128                  [::]:22           [::]:*                                                                 
    [root@node6 ~]# 
    [root@node6 ~]# ps -ef|grep tomcat
    root      293512       1  7 16:09 pts/0    00:00:02 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
    root      296379    1664  0 16:10 pts/0    00:00:00 grep --color=auto tomcat
    [root@node6 ~]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    2.3.2 访问
    关闭防火墙
    [root@node6 ~]# systemctl disable --now firewalld
    Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
    Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
    [root@node6 ~]# vim /etc/selinux/config 
    [root@node6 ~]# setenforce 0
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    在这里插入图片描述

    在这里插入图片描述

    3. 配置文件

    1. 介绍tomcat文件

    [root@node6 bin]# pwd
    /usr/local/tomcat/bin
    [root@node6 bin]# ls
    bootstrap.jar                 makebase.sh
    catalina-tasks.xml            setclasspath.bat
    catalina.bat                  setclasspath.sh
    catalina.sh //总控开关                shutdown.bat
    ciphers.bat                   shutdown.sh //停止服务
    ciphers.sh                    startup.bat
    commons-daemon-native.tar.gz  startup.sh //启动服务
    commons-daemon.jar //守护进程           tomcat-juli.jar
    configtest.bat                tomcat-native.tar.gz
    configtest.sh //配置文件检查             tool-wrapper.bat
    daemon.sh //以守护进程方式运行                    tool-wrapper.sh
    digest.bat                    version.bat
    digest.sh                     version.sh 查看版本
    makebase.bat
    [root@node6 bin]# 
    
    
    tomcat不用做环境变量,有可能部署多个tomcat
    
    
    查看日志
    [root@node6 tomcat]# ls
    BUILDING.txt     NOTICE         RUNNING.txt  lib   webapps
    CONTRIBUTING.md  README.md      bin          logs  work
    LICENSE          RELEASE-NOTES  conf         temp
    [root@node6 tomcat]# cd logs/
    [root@node6 logs]# ls
    catalina.2022-08-17.log
    catalina.out //查看日志位置
    host-manager.2022-08-17.log
    localhost.2022-08-17.log
    localhost_access_log.2022-08-17.txt
    manager.2022-08-17.log
    [root@node6 logs]# 
    
    
    安全删除文件temp/
    [root@node6 tomcat]# ls temp/
    safeToDelete.tmp
    [root@node6 tomcat]# 
    
    
    工作目录
    [root@node6 tomcat]# ls work/
    Catalina
    [root@node6 tomcat]# ls work/Catalina/localhost/
    ROOT  docs  examples  host-manager  manager  test
    [root@node6 tomcat]# 
    
    
    日志记录参数
    [root@node6 conf]# ls logging.properties
    
    
    默认代码,示例
    网站位置:
    http://192.168.232.134:8080/examples/jsp/
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60

    2. 修改配置文件

    [root@node6 tomcat]# cd conf/
    [root@node6 conf]# ls
    Catalina             jaspic-providers.xml  tomcat-users.xml
    catalina.policy      jaspic-providers.xsd  tomcat-users.xsd
    catalina.properties  logging.properties    web.xml
    context.xml          server.xml
    [root@node6 conf]# vim server.xml 
    
    <Connector protocol="AJP/1.3"
                   address="::1"
                   port="8009"
                   redirectPort="8443" />
    
    使配置文件生效
    [root@node6 ~]# catalina.sh stop
    Using CATALINA_BASE:   /usr/local/tomcat
    Using CATALINA_HOME:   /usr/local/tomcat
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
    Using CATALINA_OPTS:   
    NOTE: Picked up JDK_JAVA_OPTIONS:  --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
    [root@node6 ~]# ss -antl
    State  Recv-Q Send-Q   Local Address:Port   Peer Address:Port Process                                                       
    LISTEN 0      128            0.0.0.0:22          0.0.0.0:*                                                                  
    LISTEN 0      128               [::]:22             [::]:*                                                                  
    [root@node6 ~]# ps -ef|grep tomcat
    root      418331    1664  0 16:39 pts/0    00:00:00 grep --color=auto tomcat
    [root@node6 ~]# 
    
    [root@node6 ~]# catalina.sh start
    Using CATALINA_BASE:   /usr/local/tomcat
    Using CATALINA_HOME:   /usr/local/tomcat
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
    Using CATALINA_OPTS:   
    Tomcat started.
    [root@node6 ~]# ps -ef|grep tomcat
    root      422471       1 96 16:40 pts/0    00:00:02 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
    root      422723    1664  0 16:40 pts/0    00:00:00 grep --color=auto tomcat
    [root@node6 ~]# ss -antl
    State  Recv-Q Send-Q      Local Address:Port Peer Address:PortProcess                                                       
    LISTEN 0      128               0.0.0.0:22        0.0.0.0:*                                                                 
    LISTEN 0      1      [::ffff:127.0.0.1]:8005            *:*                                                                 
    LISTEN 0      100                 [::1]:8009         [::]:*                                                                 
    LISTEN 0      100                     *:8080            *:*                                                                 
    LISTEN 0      128                  [::]:22           [::]:*                                                                 
    [root@node6 ~]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49

    3. 介绍网站页面

    在这里插入图片描述

    • 查看服务器状态

    在这里插入图片描述

    • 出现403拒绝访问

    在这里插入图片描述

    • 解决
    加两行
    [root@node6 webapps]# cd ../conf/
    [root@node6 conf]# vim tomcat-users.xml 
    
    访问role rolename="manager-gui"/>
    <user username="tomcat" password="tomcat" roles="manager-gui"/>
    
    关闭在启动
    [root@node6 ~]# catalina.sh stop
    [root@node6 ~]# ss -antl
    State  Recv-Q Send-Q  Local Address:Port   Peer Address:Port Process 
    LISTEN 0      128           0.0.0.0:22          0.0.0.0:*            
    LISTEN 0      128              [::]:22             [::]:*            
    [root@node6 ~]# ps -ef|grep tomcat
    root      543569    1664  0 17:10 pts/0    00:00:00 grep --color=auto tomcat
    [root@node6 ~]# 
    
    [root@node6 ~]# catalina.sh start
    [root@node6 ~]# ss -antl
    State  Recv-Q Send-Q      Local Address:Port Peer Address:PortProcess
    LISTEN 0      128               0.0.0.0:22        0.0.0.0:*          
    LISTEN 0      1      [::ffff:127.0.0.1]:8005            *:*          
    LISTEN 0      100                 [::1]:8009         [::]:*          
    LISTEN 0      100                     *:8080            *:*          
    LISTEN 0      128                  [::]:22           [::]:*          
    [root@node6 ~]# ps -ef|grep tomcat
    root      544653       1  8 17:10 pts/0    00:00:02 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
    root      546788    1664  0 17:10 pts/0    00:00:00 grep --color=auto tomcat
    [root@node6 ~]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 没有访问成功,修改限制,改成可以在网页访问
    [root@node6 ~]# cd /usr/local/tomcat/webapps/
    [root@node6 webapps]# ls
    ROOT  docs  examples  host-manager  manager  test
    [root@node6 webapps]# cd manager/
    [root@node6 manager]# ls
    META-INF  WEB-INF  css  images  index.jsp  status.xsd  xform.xsl
    [root@node6 manager]# ls META-INF/
    context.xml
    [root@node6 manager]# vim META-INF/context.xml 
    [root@node6 manager]# tail META-INF/context.xml
      See the License for the specific language governing permissions and
      limitations under the License.
    -->
    <Context antiResourceLocking="false" privileged="true" >
      <CookieProcessor className="org.apache.tomcat.util.http.Rfc6265CookieProcessor"
                       sameSiteCookies="strict" />
      <Valve className="org.apache.catalina.valves.RemoteAddrValve"
             allow="192\.168\.232\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
      <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
    </Context>
    [root@node6 manager]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 访问

    在这里插入图片描述

    在这里插入图片描述

    • heap memory 堆内存 non -heap memory 非堆内存

    • 应用程序列表跟/usr/local/tomcat/webapps相对应

    在这里插入图片描述

    • 管理主机 host manager

    在这里插入图片描述

    • 修改
    [root@node6 tomcat]# cd conf/
    [root@node6 conf]# ls
    Catalina             jaspic-providers.xml  tomcat-users.xml
    catalina.policy      jaspic-providers.xsd  tomcat-users.xsd
    catalina.properties  logging.properties    web.xml
    context.xml          server.xml
    [root@node6 conf]# vim tomcat-users.xml 
    
    <role rolename="manager-gui"/>
    <role rolename="admin-gui"/>
    <user username="tomcat" password="tomcat" roles="manager-gui,admin-gui"/>
    
    重启
    [root@node6 ~]# catalina.sh stop
    Using CATALINA_BASE:   /usr/local/tomcat
    Using CATALINA_HOME:   /usr/local/tomcat
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
    Using CATALINA_OPTS:   
    NOTE: Picked up JDK_JAVA_OPTIONS:  --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
    [root@node6 ~]# ss -antl
    State  Recv-Q  Send-Q   Local Address:Port   Peer Address:Port Process 
    LISTEN 0       128            0.0.0.0:22          0.0.0.0:*            
    LISTEN 0       128               [::]:22             [::]:*            
    [root@node6 ~]# ps -ef|grep tomcat
    root      665375    1664  0 17:39 pts/0    00:00:00 grep --color=auto tomcat
    [root@node6 ~]# 
    [root@node6 ~]# catalina.sh start
    Using CATALINA_BASE:   /usr/local/tomcat
    Using CATALINA_HOME:   /usr/local/tomcat
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
    Using CATALINA_OPTS:   
    Tomcat started.
    [root@node6 ~]# ss -antl
    State  Recv-Q Send-Q      Local Address:Port Peer Address:Port Process 
    LISTEN 0      128               0.0.0.0:22        0.0.0.0:*            
    LISTEN 0      1      [::ffff:127.0.0.1]:8005            *:*            
    LISTEN 0      100                 [::1]:8009         [::]:*            
    LISTEN 0      100                     *:8080            *:*            
    LISTEN 0      128                  [::]:22           [::]:*            
    [root@node6 ~]# 
    
    
    [root@node6 tomcat]# cd webapps/host-manager/
    [root@node6 host-manager]# ls
    META-INF  WEB-INF  css  images  index.jsp
    [root@node6 host-manager]# vim META-INF/context.xml 
    [root@node6 host-manager]# tail META-INF/context.xml
      See the License for the specific language governing permissions and
      limitations under the License.
    -->
    <Context antiResourceLocking="false" privileged="true" >
      <CookieProcessor className="org.apache.tomcat.util.http.Rfc6265CookieProcessor"
                       sameSiteCookies="strict" />
      <Valve className="org.apache.catalina.valves.RemoteAddrValve"
             allow="192\.168\.232\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
      <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
    </Context>
    [root@node6 host-manager]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 访问

    在这里插入图片描述

    4. jenkins

    1. 介绍jenkins

    • jenkins 持续集成工具

    • jenkins是一个用 Java 编写的开源自动化软件项目。

    • 是基于Java开发的一种持续集成工具,用于监控持续重复的工作。

    • Jenkins 用于持续构建和测试软件项目 ,集成了各种开发生命周期过程,包括构建、文档、测试、打包、模拟、部署、静态分析等等。”

    • 是一个打包,流程控制软件

    • java代码:使用开发工具(eclipse)打包

    2. jenkins网址

    软件位置:
    https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.346.3/jenkins.war
    
    [root@node6 ~]# ls
    anaconda-ks.cfg  apache-tomcat-9.0.65.tar.gz  jenkins.war
    [root@node6 ~]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    3. 部署jenkins

    [root@node6 ~]# cd /usr/local/tomcat/webapps/
    [root@node6 webapps]# ls
    ROOT  docs  examples  host-manager  manager  test
    [root@node6 webapps]# mv * /opt/
    [root@node6 webapps]# 
    
    [root@node6 ~]# cp jenkins.war /usr/local/tomcat/webapps/
    
    [root@node6 webapps]# ls
    jenkins.war
    
    
    重启之后
    [root@node6 webapps]# ls
    jenkins.war
    [root@node6 webapps]# ls
    jenkins  jenkins.war
    [root@node6 webapps]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 查看

    在这里插入图片描述

    • 登录
    [root@node6 ~]# cat /root/.jenkins/secrets/initialAdminPassword
    309ece77ccfe4dee9c891e0a43189a0f
    
    • 1
    • 2

    在这里插入图片描述

    • 安装插件

    在这里插入图片描述

    • 填写资料

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    • 访问成功

    在这里插入图片描述

    • 查看用户列表

    在这里插入图片描述

    • 构建历史:发布版本等的记录

    • 系统管理

    在这里插入图片描述

    • 工作目录
    [root@node6 ~]# cd .jenkins/
    [root@node6 .jenkins]# ls
    config.xml
    hudson.model.UpdateCenter.xml
    hudson.plugins.emailext.ExtendedEmailPublisher.xml
    hudson.plugins.git.GitTool.xml
    identity.key.enc
    jenkins.install.InstallUtil.lastExecVersion
    jenkins.install.UpgradeWizard.state
    jenkins.model.JenkinsLocationConfiguration.xml
    jenkins.telemetry.Correlator.xml
    jobs
    nodeMonitors.xml
    nodes
    plugins
    queue.xml.bak
    secret.key
    secret.key.not-so-secret
    secrets
    updates
    userContent
    users
    [root@node6 .jenkins]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 绑定任务

    在这里插入图片描述

    • 邮箱

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    5. 拉取代码

    [root@node6 ~]# dnf -y install git
    [root@node6 ~]# git clone https://github.com/chendao2015/tomcat-java-demo.git
    Cloning into 'tomcat-java-demo'...
    remote: Enumerating objects: 549, done.
    remote: Counting objects: 100% (3/3), done.
    remote: Compressing objects: 100% (3/3), done.
    remote: Total 549 (delta 0), reused 2 (delta 0), pack-reused 546
    Receiving objects: 100% (549/549), 5.08 MiB | 1018.00 KiB/s, done.
    Resolving deltas: 100% (213/213), done.
    [root@node6 ~]# ls
    anaconda-ks.cfg              jenkins.war
    apache-tomcat-9.0.65.tar.gz  tomcat-java-demo
    [root@node6 ~]# cd tomcat-java-demo/
    [root@node6 tomcat-java-demo]# ls
    Dockerfile  LICENSE  README.md  db  pom.xml  src
    [root@node6 tomcat-java-demo]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    6. 程序打包工具

    1. maven

    • 例名字叫pom.xml
    • maven是一个java编写的工具(需要安装配置),用来服务项目开发中常用的编译打包等功能。为了实现其功能,maven定义了项目的目录格式(最重要的配置文件pom.xml),定义了一些概念,坐标,依赖,仓库,生命周期(可以使用mvn命令指定执行哪些周期),插件

    2. ant

    • ant 是一个由java编写的脚本工具,常用来进行打包web项目,安卓项目等。适合自动化远程部署。

    3. gradle

    • gradle是一个自动化构建工具。 gradle是通过组织一系列task来最终完成自动化构建的,所以task是gradle里最重要的概念。以生成一个可用的apk为例,整个过程要经过资源的处理,javac编译,dex打包
    • gradle使用groovy或者kotlin编写。 groovy是DSL。DSL也就是Domain Specific Language的简称,也就是领域特定语言,是为了解决某一类任务专门设计的计算机语言
    • 无论是基于groovy还是kotlin编写,均是基于jvm的语言。
  • 相关阅读:
    利用 Pandoc + ChatGPT 优雅地润色论文,并保持 Word 公式格式:Pandoc将Word和LaTeX文件互相转化
    css格式和样式选择器-学习记录
    My Forty-Second Page - 二叉搜索树的最近公共祖先 - By Nicolas
    21.10 Python 使用CRC32校验文件
    [晕事]今天做了件晕事30, perf
    Matlab:在多行上延续长语句
    Java.lang.Class类 getGenericSuperclass()方法有什么功能呢?
    力扣--深度优先算法/回溯算法78.子集
    【北亚数据恢复】IBM System Storage存储lvm信息丢失数据恢复方案
    springboot 如何引用外部配置文件(spring.config.location)
  • 原文地址:https://blog.csdn.net/mushuangpanny/article/details/126355634