一篇搞懂Tomcat ,运维小白也能轻松上手!
tomcat使用• 前置知识
-
- • tomcat概念
- • tomcat作用
- • 安装部署tomcat
- • 环境信息
- • 安装jdk
- • 安装tomcat
- • 启动tomcat
- • tomcat目录结构
- • bin目录
- • conf目录
- • logs目录
- • webapps目录
- • 案例:部署zrlog应用
- • tomcat部署多实例
前置知识
tomcat概念
Tomcat是由Java编写的一个开源的、轻量级的应用服务器,是Apache软件基金会的一个项目。它实现了Java Servlet、JavaServer Pages(JSP)和Java Expression Language(EL)等Java技术,用于支持在Java平台上运行的动态Web应用程序。Tomcat的全名是Apache Tomcat。
tomcat作用
Tomcat 是一个开源的 Java Servlet 容器,主要用于运行 Java Web 应用程序。
运行 Java Web 应用程序
- • Servlet 和 JSP 支持
Tomcat 是 Java Servlet 和 JavaServer Pages(JSP)技术的官方实现。它能够处理基于 Servlet 和 JSP 的 Web 应用程序,使得开发者可以使用 Java 语言开发动态 Web 内容。例如,开发者可以创建一个基于 Servlet 的用户登录功能,当用户提交登录表单时,Servlet 可以处理用户的请求,验证用户名和密码,并根据验证结果返回相应的页面。
- • Web 应用部署
它支持将 Java Web 应用程序打包为 WAR(Web Application Archive)文件进行部署。开发者只需将 WAR 文件放到 Tomcat 的 webapps 目录下,Tomcat 会自动解压并启动该应用。例如,一个电商网站的后端应用可以被打包为 WAR 文件,部署到 Tomcat 上,用户通过浏览器访问该网站时,Tomcat 会处理用户的请求并返回相应的商品页面。
提供 Web 服务器功能
- • HTTP/HTTPS 服务
Tomcat 本身就是一个 Web 服务器,可以接收和处理 HTTP/HTTPS 请求。它可以配置为监听特定的端口(如默认的 8080 端口),接收用户的浏览器请求,并将处理后的结果(如 HTML 页面、图片等)返回给客户端。例如,用户在浏览器中输入一个基于 Tomcat 部署的网站的 URL,Tomcat 会根据请求的路径找到对应的资源并返回。
- • 静态资源服务
它能够提供静态资源(如 HTML 文件、CSS 文件、JavaScript 文件、图片等)的服务。当用户请求一个静态资源时,Tomcat 会从文件系统中找到对应的文件并发送给客户端。例如,一个简单的个人博客网站的页面样式文件(CSS 文件)可以通过 Tomcat 提供给用户。
开发和测试 Java Web 应用程序
- • 开发环境支持
对于 Java Web 开发者来说,Tomcat 是一个常用的开发环境。它提供了热部署功能,开发者在修改代码后,无需重新启动服务器即可看到修改后的效果。例如,开发者在开发一个基于 JSP 的新闻网站时,修改了新闻列表页面的 JSP 文件后,保存文件后刷新浏览器即可看到更新后的页面。
- • 集成开发环境(IDE)支持
Tomcat 可以与各种 Java IDE(如 Eclipse、IntelliJ IDEA 等)集成,方便开发者进行开发和调试。IDE 可以直接将项目部署到 Tomcat 中,并提供调试工具来帮助开发者查找和修复代码中的问题。
回到顶部
安装部署tomcat
环境信息
| IP |
主机名 |
Linux系统 |
规格 |
| 10.0.0.21 |
tomcat |
Ubuntu22.04 |
2c4g |
tomcat是由Java编写的,所以安装tomcat之前我们需要先安装jdk,我们这里使用jdk8和tomcat9.0.50版本
安装jdk
java由于被Oracle公司收购,所以下载jdk需要去Oracle官网下载 https://www.oracle.com/
但是在Oracle官方下载是需要收费的,我们可以选择下载open-jdk,下载地址:https://jdk.java.net/java-se-ri/8-MR6
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| | | | | --- | --- | | | [root@tomcat ~]# mkdir -p /app/tools && cd /app/tools | | | [root@tomcat /app/tools]# wget https://download.java.net/openjdk/jdk8u44/ri/openjdk-8u44-linux-x64.tar.gz | | | [root@tomcat /app/tools]# tar -xf openjdk-8u44-linux-x64.tar.gz | | | [root@tomcat /app/tools]# ln -s /app/tools/java-se-8u44-ri/ /app/tools/jdk | | | [root@tomcat /app/tools]# ll | | | total 210968 | | | drwxr-xr-x 3 root root 4096 Apr 4 13:15 ./ | | | drwxr-xr-x 3 root root 4096 Apr 4 13:03 ../ | | | drwxr-xr-x 9 uucp 143 4096 May 23 2024 java-se-8u44-ri/ | | | lrwxrwxrwx 1 root root 27 Apr 4 13:15 jdk -> /app/tools/java-se-8u44-ri// | | | -rw-r--r-- 1 root root 216015848 May 23 2024 openjdk-8u44-linux-x64.tar.gz | | | [root@tomcat /app/tools]# cat >> /etc/profile <<EOF | | | export JAVA_HOME=/app/tools/jdk # 根据实际解压后的目录调整 | | | export PATH=$JAVA_HOME/bin:$PATH | | | EOF | | | [root@tomcat /app/tools]# source /etc/profile | | | [root@tomcat ~]# java -version | | | openjdk version "1.8.0_44" | | | OpenJDK Runtime Environment (build 1.8.0_44-b02) | | | OpenJDK 64-Bit Server VM (build 25.40-b25, mixed mode) |
|
安装tomcat
tomcat官网地址:https://tomcat.apache.org/
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
| | | | | --- | --- | | | [root@tomcat /app/tools/tomcat]# wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.50/bin/apache-tomcat-9.0.50.tar.gz | | | --2025-04-04 13:29:05-- https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.50/bin/apache-tomcat-9.0.50.tar.gz | | | Resolving archive.apache.org (archive.apache.org)... 65.108.204.189, 2a01:4f9:1a:a084::2 | | | Connecting to archive.apache.org (archive.apache.org)\|65.108.204.189\|:443... connected. | | | HTTP request sent, awaiting response... 200 OK | | | Length: 11507318 (11M) [application/x-gzip] | | | Saving to: ‘apache-tomcat-9.0.50.tar.gz’ | | | | | | apache-tomcat-9.0.50.tar.gz 100%[=================================================================================================================>] 10.97M 1.71MB/s in 7.7s | | | | | | 2025-04-04 13:29:14 (1.42 MB/s) - ‘apache-tomcat-9.0.50.tar.gz’ saved [11507318/11507318] | | | | | | [root@tomcat /app/tools/tomcat]# tar -xf apache-tomcat-9.0.50.tar.gz | | | [root@tomcat /app/tools/tomcat]# ln -s `pwd`/apache-tomcat-9.0.50 `pwd`/tomcat | | | [root@tomcat /app/tools/tomcat]# ll | | | total 11252 | | | drwxr-xr-x 3 root root 4096 Apr 4 13:32 ./ | | | drwxr-xr-x 4 root root 4096 Apr 4 13:28 ../ | | | drwxr-xr-x 9 root root 4096 Apr 4 13:29 apache-tomcat-9.0.50/ | | | -rw-r--r-- 1 root root 11507318 Jun 28 2021 apache-tomcat-9.0.50.tar.gz | | | lrwxrwxrwx 1 root root 38 Apr 4 13:32 tomcat -> /app/tools/tomcat/apache-tomcat-9.0.50/ | | | |
|
启动tomcat
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| | | | | --- | --- | | | [root@tomcat /app/tools/tomcat]# cd tomcat/bin/ | | | [root@tomcat /app/tools/tomcat/tomcat/bin]# ./startup.sh | | | Using CATALINA_BASE: /app/tools/tomcat/tomcat | | | Using CATALINA_HOME: /app/tools/tomcat/tomcat | | | Using CATALINA_TMPDIR: /app/tools/tomcat/tomcat/temp | | | Using JRE_HOME: /app/tools/jdk | | | Using CLASSPATH: /app/tools/tomcat/tomcat/bin/bootstrap.jar:/app/tools/tomcat/tomcat/bin/tomcat-juli.jar | | | Using CATALINA_OPTS: | | | Tomcat started. | | | ##检查Java进程 | | | [root@tomcat /app/tools/tomcat/tomcat/bin]# ps -ef \| grep java | | | root 14131 1 7 13:33 pts/0 00:00:01 /app/tools/jdk/bin/java -Djava.util.logging.config.file=/app/tools/tomcat/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 /app/tools/tomcat/tomcat/bin/bootstrap.jar:/app/tools/tomcat/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/app/tools/tomcat/tomcat -Dcatalina.home=/app/tools/tomcat/tomcat -Djava.io.tmpdir=/app/tools/tomcat/tomcat/temp org.apache.catalina.startup.Bootstrap start | | | root 14161 1081 0 13:33 pts/0 00:00:00 grep --color=auto java | | | [root@tomcat /app/tools/tomcat/tomcat/bin]# | | | ##检查端口号 | | | [root@tomcat /app/tools/tomcat/tomcat/bin]# ss -lntup \| grep 8080 | | | tcp LISTEN 0 100 *:8080 *:* users:(("java",pid=14131,fd=56)) | | | |
|
出现上述进程和端口号表示tomcat启动成功,我们打开浏览器测试一下
http://10.0.0.21/8080
image
至此安装tomcat结束
回到顶部
tomcat目录结构
我们安装后发现tomcat的有很多目录,那这些目录有什么作用呢?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| | | | |---|---| | | [root@tomcat/app/tools/tomcat/tomcat/bin]# cd /app/tools/tomcat/tomcat | | | [root@tomcat/app/tools/tomcat/tomcat]# ll | | |total156| | |drwxr-xr-x9rootroot4096 Apr413:29./| | |drwxr-xr-x3rootroot4096 Apr413:32../| | |-rw-r-----1rootroot18949Jun282021 BUILDING.txt| | |-rw-r-----1rootroot6210 Jun282021 CONTRIBUTING.md| | |-rw-r-----1rootroot57092Jun282021 LICENSE| | |-rw-r-----1rootroot2333 Jun282021 NOTICE| | |-rw-r-----1rootroot3372 Jun282021 README.md| | |-rw-r-----1rootroot6898 Jun282021 RELEASE-NOTES| | |-rw-r-----1rootroot16507Jun282021 RUNNING.txt| | |drwxr-x---2rootroot4096 Apr413:29bin/| | |drwx------3rootroot4096 Apr413:33conf/| | |drwxr-x---2rootroot4096 Apr413:29lib/| | |drwxr-x---2rootroot4096 Apr413:33logs/| | |drwxr-x---2rootroot4096 Apr413:29temp/| | |drwxr-x---7rootroot4096 Jun282021 webapps/| | |drwxr-x---3rootroot4096 Apr413:33work/ |
|
bin目录
bin目录下放置了很多关于tomcat的可执行脚本
其中最为主要的有几个
- •
startup.sh:Linux中启动tomcat的脚本
- •
startup.bat:Windows中启动tomcat的脚本
- •
shutdown.sh:Linux中关闭tomcat的脚本
- •
shutdown.bat:Windows中关闭tomcat的脚本
- •
catalina.sh:Linux中tomcat的核心脚本文件,里面配置了tomcat的启动、关闭方式,以及tomcat的优化和jvm优化
- •
catalina.bat:Windows中Linux中tomcat的核心脚本文件,里面配置了tomcat的启动、关闭方式,以及tomcat的优化和jvm优化
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
| | | | |---|---| | | [root@tomcat/app/tools/tomcat/tomcat]# ll bin/ | | |total884| | |drwxr-x---2rootroot 4096 Apr413:29./| | |drwxr-xr-x9rootroot 4096 Apr413:29../| | |-rw-r-----1rootroot34698Jun282021 bootstrap.jar| | |-rw-r-----1rootroot 1664 Jun282021 catalina-tasks.xml| | |-rw-r-----1rootroot16840Jun282021 catalina.bat| | |-rwxr-x---1rootroot25294Jun282021 catalina.sh*| | |-rw-r-----1rootroot 2123 Jun282021 ciphers.bat| | |-rwxr-x---1rootroot 1997 Jun282021 ciphers.sh*| | |-rw-r-----1rootroot207420Jun282021 commons-daemon-native.tar.gz| | |-rw-r-----1rootroot25357Jun282021 commons-daemon.jar| | |-rw-r-----1rootroot 2040 Jun282021 configtest.bat| | |-rwxr-x---1rootroot 1922 Jun282021 configtest.sh*| | |-rwxr-x---1rootroot 9100 Jun282021 daemon.sh*| | |-rw-r-----1rootroot 2091 Jun282021 digest.bat| | |-rwxr-x---1rootroot 1965 Jun282021 digest.sh*| | |-rw-r-----1rootroot 3606 Jun282021 makebase.bat| | |-rwxr-x---1rootroot 3382 Jun282021 makebase.sh*| | |-rw-r-----1rootroot 3460 Jun282021 setclasspath.bat| | |-rwxr-x---1rootroot 3708 Jun282021 setclasspath.sh*| | |-rw-r-----1rootroot 2020 Jun282021 shutdown.bat| | |-rwxr-x---1rootroot 1902 Jun282021 shutdown.sh*| | |-rw-r-----1rootroot 2022 Jun282021 startup.bat| | |-rwxr-x---1rootroot 1904 Jun282021 startup.sh*| | |-rw-r-----1rootroot46614Jun282021 tomcat-juli.jar| | |-rw-r-----1rootroot425741Jun282021 tomcat-native.tar.gz| | |-rw-r-----1rootroot 4574 Jun282021 tool-wrapper.bat| | |-rwxr-x---1rootroot 5540 Jun282021 tool-wrapper.sh*| | |-rw-r-----1rootroot 2026 Jun282021 version.bat| | |-rwxr-x---1rootroot 1908 Jun282021 version.sh* |
|
conf目录
conf目录中主要存放了关于tomcat的配置文件
- • server.xml
- • 配置了关于tomcat的http、https协议以及端口号
- • 站点管理目录(是否自动解压、自动部署)
- • 日志格式
- • web.xml
辅助配置文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| | | | |---|---| | | [root@tomcat/app/tools/tomcat/tomcat]# ll conf/ | | |total244| | |drwx------3rootroot 4096 Apr413:33./| | |drwxr-xr-x9rootroot 4096 Apr413:29../| | |drwxr-x---3rootroot 4096 Apr413:33Catalina/| | |-rw-------1rootroot13052Jun282021 catalina.policy| | |-rw-------1rootroot 7262 Jun282021 catalina.properties| | |-rw-------1rootroot 1400 Jun282021 context.xml| | |-rw-------1rootroot 1149 Jun282021 jaspic-providers.xml| | |-rw-------1rootroot 2313 Jun282021 jaspic-providers.xsd| | |-rw-------1rootroot 4144 Jun282021 logging.properties| | |-rw-------1rootroot 7589 Jun282021 server.xml| | |-rw-------1rootroot 2756 Jun282021 tomcat-users.xml| | |-rw-------1rootroot 2558 Jun282021 tomcat-users.xsd| | |-rw-------1rootroot172359Jun282021 web.xml| | | |
|
server.xml配置文件详解
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
| | | | | --- | --- | | | [root@tomcat /app/tools/tomcat/tomcat]# cat conf/server.xml | | | <?xml version="1.0" encoding="UTF-8"?> | | | | | | <!-- 8005 shutdown端口,连接这个端口输入shutdown字符,就可以关闭Tomcat --> | | | <Server port="8005" shutdown="SHUTDOWN"> | | | <Listener className="org.apache.catalina.startup.VersionLoggerListener" /> | | | <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" /> | | | <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" /> | | | <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /> | | | <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" /> | | | | | | <!-- 管理认证功能 --> | | | <GlobalNamingResources> | | | <Resource name="UserDatabase" auth="Container" | | | type="org.apache.catalina.UserDatabase" | | | description="User database that can be updated and saved" | | | factory="org.apache.catalina.users.MemoryUserDatabaseFactory" | | | pathname="conf/tomcat-users.xml" /> | | | </GlobalNamingResources> | | | | | | | | | <Service name="Catalina"> | | | | | | <!--处理用户请求的,8080端口,redirectPort="8443是https端口,connectionTimeout="20000"是连接超时时间s--> | | | | | | <Connector port="8080" protocol="HTTP/1.1" | | | connectionTimeout="20000" | | | redirectPort="8443" /> | | | <!--指定虚拟主机,defaultHost="localhost"指定localhost作为默认的虚拟主机--> | | | <Engine name="Catalina" defaultHost="localhost"> | | | | | | <Realm className="org.apache.catalina.realm.LockOutRealm"> | | | | | | <Realm className="org.apache.catalina.realm.UserDatabaseRealm" | | | resourceName="UserDatabase"/> | | | </Realm> | | | <!--配置站点目录,unpackWARs="true"自动解压,autoDeploy="true"自动部署--> | | | <Host name="localhost" appBase="webapps" | | | unpackWARs="true" autoDeploy="true"> | | | <!--配置tomcat日志--> | | | <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" | | | prefix="localhost_access_log" suffix=".txt" | | | pattern="%h %l %u %t "%r" %s %b" /> | | | | | | </Host> | | | </Engine> | | | </Service> | | | </Server> | | | |
|
tomcat日志格式说明
- • %h:客户端的IP地址
- • %l:远程逻辑用户名(通常为空)。
- • %u:远程用户(如果启用了身份验证)
- • %t:访问时间
- • %r:请求起始行。请求方法,请求uri
- • %s:http状态码,例如200,404
- • %b:发送给客户端的字节数
- • ":双引号
logs目录
logs目录主要存放了关于tomcat的一些日志
- • catalina.out:tomcat应用日志
- • catalina.2025-04-04.log:切割日志,按照每天进行切割
- • localhost_access_log.2025-04-04.txt :访问日志
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| | | | |--- | --- | | | [root@tomcat/app/tools/tomcat/tomcat]# ll logs | | | total 32| | | drwxr-x--- 2 root root 4096 Apr 4 13:33 ./ | | | drwxr-xr-x 9 root root 4096 Apr 413:29 ../| | |-rw-r----- 1 root root 5955 Apr 4 13:33 catalina.2025-04-04.log | | |-rw-r----- 1 root root 5955 Apr 4 13:33 catalina.out | | |-rw-r----- 1 root root 0 Apr 4 13:33 host-manager.2025-04-04.log | | |-rw-r----- 1 root root 408 Apr 4 13:33 localhost.2025-04-04.log | | |-rw-r----- 1 root root 711 Apr 4 13:35 localhost_access_log.2025-04-04.txt | | |-rw-r----- 1 root root 0 Apr 4 13:33 manager.2025-04-04.log | | | |
|
webapps目录
webapps目录是tomcat的站点目录,要部署Java项目时,需要将Java的war包放在该目录下,其中ROOT目录是项目的根目录,放在ROOT目录下的项目访问时可以不用带路径,只需要http://ip:port即可访问,如果是在manager目录下,我们访问该项目需要http://ip:port/manager进行访问
1 2 3 4 5 6 7 8 9 10 11 12
| | | | |---|---| | | [root@tomcat/app/tools/tomcat/tomcat]# ll webapps/ | | |total28| | |drwxr-x---7rootroot4096 Jun282021./| | |drwxr-xr-x9rootroot4096 Apr413:29../| | |drwxr-x---3rootroot4096 Apr413:29ROOT/| | |drwxr-x---15rootroot4096 Apr413:29docs/| | |drwxr-x---7rootroot4096 Apr413:29examples/| | |drwxr-x---6rootroot4096 Apr413:29host-manager/| | |drwxr-x---6rootroot4096 Apr413:29manager/ |
|
回到顶部
案例:部署zrlog应用
在这里感谢zrlog的提供方:https://gitee.com/94fzb/zrlog
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
| | | | | --- | --- | | | #下载zrlog应用的war包 | | | [root@tomcat /app/tools/tomcat/tomcat]# mkdir /app/war && cd /app/war | | | [root@tomcat /app/war]# wget https://dl.zrlog.com/release/zrlog.war | | | --2025-04-04 14:20:17-- https://dl.zrlog.com/release/zrlog.war | | | Resolving dl.zrlog.com (dl.zrlog.com)... 154.17.224.166 | | | Connecting to dl.zrlog.com (dl.zrlog.com)\|154.17.224.166\|:443... connected. | | | HTTP request sent, awaiting response... 200 OK | | | Length: 10794045 (10M) [application/java-archive] | | | Saving to: ‘zrlog.war’ | | | | | | zrlog.war 100%[=================================================================================================================>] 10.29M 1.30MB/s in 9.3s | | | | | | 2025-04-04 14:20:28 (1.11 MB/s) - ‘zrlog.war’ saved [10794045/10794045] | | | | | | #将tomcat原来的站点目录移走,做个备份 | | | [root@tomcat /app/war]# mv /app/tools/tomcat/tomcat/webapps /app/tools/tomcat/tomcat/webapps_bak_20250404 | | | [root@tomcat /app/war]# mkdir -p /app/tools/tomcat/tomcat/webapps | | | #将zrlog移动至站点目录,并重命名为ROOT.war | | | [root@tomcat /app/war]# mv /app/war/zrlog.war /app/tools/tomcat/tomcat/webapps/ROOT.war | | | #检查 | | | [root@tomcat /app/war]# ll /app/tools/tomcat/tomcat/webapps/ | | | total 10556 | | | drwxr-xr-x 3 root root 4096 Apr 4 14:22 ./ | | | drwxr-xr-x 10 root root 4096 Apr 4 14:21 ../ | | | drwxr-x--- 9 root root 4096 Apr 4 14:22 ROOT/ | | | -rw-r--r-- 1 root root 10794045 Jul 10 2024 ROOT.war |
|
访问zrlog->http://10.0.0.21:8080
image
这里需要配置数据库相关的连接,我们使用docker直接创建
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
| | | | | --- | --- | | | [root@master01 ~]# docker run -d --name mysql_5.7 -p 3306:3306 --restart always -v /data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1 docker.m.daocloud.io/mysql:5.7 | | | fafca85377be4a37aaba52563bfe3b8e398a2fb1d8f51a856497cabbd33b6849 | | | [root@master01 ~]# docker ps -a | | | CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES | | | fafca85377be docker.m.daocloud.io/mysql:5.7 "docker-entrypoint.s…" 54 seconds ago Up 54 seconds 0.0.0.0:3306->3306/tcp, [::]:3306->3306/tcp, 33060/tcp mysql_5.7 | | | | | | #进入容器创建数据库 | | | [root@master01 ~]# docker exec -it mysql_5.7 bash | | | bash-4.2# mysql -uroot -p1 | | | mysql: [Warning] Using a password on the command line interface can be insecure. | | | Welcome to the MySQL monitor. Commands end with ; or \g. | | | Your MySQL connection id is 2 | | | Server version: 5.7.44 MySQL Community Server (GPL) | | | | | | Copyright (c) 2000, 2023, Oracle and/or its affiliates. | | | | | | Oracle is a registered trademark of Oracle Corporation and/or its | | | affiliates. Other names may be trademarks of their respective | | | owners. | | | | | | Type 'help;' or '\h'forhelp. Type '\c' to clear the current input statement. | | | | | | mysql> create database zrlog; | | | Query OK, 1 row affected (0.00 sec) | | | | | | mysql> | | | |
|
zrlog中填写数据库相关信息,然后点击下一步
image
填写网站信息,点击下一步,最后点击完成即可
image
哟哟哟~,我们的网站搭建完成了!!!
image
回到顶部
tomcat部署多实例
背景
当一台服务器的资源足够多,内存足够大,这个时候我们要充分考虑这台服务器的性能,所以可以选择在某一台服务器上部署多个tomcat实例
部署步骤
准备多个tomcat目录
一个tomcat目录对应一个tomcat实例,每个tomcat都有自己的独立目录,通过目录区分不同的tomcat
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| | | | |---|---| | | [root@tomcat/app/tools]# tar -xf apache-tomcat-9.0.50.tar.gz | | | [root@tomcat/app/tools]# cp -r apache-tomcat-9.0.50 tomcat_8081 | | | [root@tomcat/app/tools]# cp -r apache-tomcat-9.0.50 tomcat_8082 | | | [root@tomcat/app/tools]# ll | | |total222224| | |drwxr-xr-x7rootroot 4096 Apr420:58./| | |drwxr-xr-x5rootroot 4096 Apr414:47../| | |drwxr-xr-x9rootroot 4096 Apr420:57apache-tomcat-9.0.50/| | |-rw-r--r--1rootroot11507318Apr420:57apache-tomcat-9.0.50.tar.gz| | |drwxr-xr-x9rootroot 4096 Apr420:58tomcat_8081/| | |drwxr-xr-x9rootroot 4096 Apr420:58tomcat_8082/| | | |
|
修改端口
每个实例的端口号不能冲突,tomcat默认的端口号有三个,8080、8005、8443,我们要修改它们
1 2 3 4 5 6 7 8 9 10 11 12 13
| | | | | --- | --- | | | #tomcat_8081实例 | | | [root@tomcat /app/tools]# sed -i 's#8005#8006#g' tomcat_8081/conf/server.xml | | | [root@tomcat /app/tools]# sed -i 's#8080#8081#g' tomcat_8081/conf/server.xml | | | [root@tomcat /app/tools]# sed -i 's#8443#8444#g' tomcat_8081/conf/server.xml | | | | | | #tomcat_8082实例 | | | [root@tomcat /app/tools]# sed -i 's#8006#8007#g' tomcat_8082/conf/server.xml | | | [root@tomcat /app/tools]# sed -i 's#8080#8082#g' tomcat_8082/conf/server.xml | | | [root@tomcat /app/tools]# sed -i 's#8443#8445#g' tomcat_8082/conf/server.xml | | | |
|
启动
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| | | | | --- | --- | | | [root@tomcat /app/tools]# ./tomcat_8081/bin/startup.sh | | | Using CATALINA_BASE: /app/tools/tomcat_8081 | | | Using CATALINA_HOME: /app/tools/tomcat_8081 | | | Using CATALINA_TMPDIR: /app/tools/tomcat_8081/temp | | | Using JRE_HOME: /app/tools/jdk | | | Using CLASSPATH: /app/tools/tomcat_8081/bin/bootstrap.jar:/app/tools/tomcat_8081/bin/tomcat-juli.jar | | | Using CATALINA_OPTS: | | | Tomcat started. | | | [root@tomcat /app/tools]# ./tomcat_8082/bin/startup.sh | | | Using CATALINA_BASE: /app/tools/tomcat_8082 | | | Using CATALINA_HOME: /app/tools/tomcat_8082 | | | Using CATALINA_TMPDIR: /app/tools/tomcat_8082/temp | | | Using JRE_HOME: /app/tools/jdk | | | Using CLASSPATH: /app/tools/tomcat_8082/bin/bootstrap.jar:/app/tools/tomcat_8082/bin/tomcat-juli.jar | | | Using CATALINA_OPTS: | | | Tomcat started. |
|
检查
1 2 3 4 5 6 7 8
| | | | | --- | --- | | | [root@tomcat /app/tools]# ss -lntup \| grep 8081 | | | tcp LISTEN 0 100 *:8081 *:* users:(("java",pid=15057,fd=56)) | | | [root@tomcat /app/tools]# ss -lntup \| grep 8082 | | | tcp LISTEN 0 100 *:8082 *:* users:(("java",pid=15094,fd=56)) | | | [root@tomcat /app/tools]# |
|
访问测试
http://10.0.0.21:8081
http://10.0.0.21:8082
链接:https://www.cnblogs.com/huangSir-devops/p/18808870
https://mp.weixin.qq.com/s/utvmFOsBfabnuwBrs0PCUw