常用的Servlet容器使用
Tomcat、Jetty、WebLogic 、Jboss
为了简化部署流程,Web 容器往往也会自带 Web 服务器模块,提供基本的 HTTP 服务,所以您可以不用再安装 Apache、IIS、Nginx 等传统意义上的服务器,只需要安装一款 Web 容器,就能部署 Servlet 网站了。
jetty
https://www.eclipse.org/jetty/download.php
https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/9.3.29.v20201019/jetty-distribution-9.3.29.v20201019.tar.gz
[root@vm ~]# tar xf jetty-distribution-9.3.29.v20201019.tar.gz
[root@vm ~]# mv jetty-distribution-9.3.29.v20201019/ /opt/jetty-dis-9.3.29
[root@vm ~]# cd /opt/jetty-dis-9.3.29/
[root@vm jetty-dis-9.3.29]# ls
bin etc license-eplv10-aslv20.html modules README.TXT start.ini VERSION.txt
demo-base lib logs notice.html resources start.jar webapps
[root@vm jetty-dis-9.3.29]# ls bin/
jetty.sh
lib/ #运行Jetty需要的所有JAR包
logs/ #log目录
modules/ #模块定义目录,例如 server, http, https等等模块的定义文件
resources/ #额外的资源信息,例如log4j配置
start.ini #全局命令行参数文件,该文件包含的内容将添加到命令行参数中,也就是 java -jar start.jar [arg...] 该命令的参数
start.jar #运行Jetty的Jar文件
webapps/ #webapps文件夹
[root@vm jetty-dis-9.3.29]# cat modules/http.mod
# jetty.http.port=8080 #监听端口
[root@vm jetty-dis-9.3.29]# ./bin/jetty.sh start
[root@vm jetty-dis-9.3.29]# ss -antup| grep 8080
tcp LISTEN 0 50 [::]:8080 [::]:*
[root@vm jetty-dis-9.3.29]# cp -r demo-base/webapps/* webapps/ #测试demo
[root@vm jetty-dis-9.3.29]# curl localhost:8080
...
<h1>Welcome to Jetty 9</h1>
[root@vm jetty-dis-9.3.29]# bin/jetty.sh stop
Stopping Jetty: OK
[root@vm ~]# docker pull jetty:9.4.50-jre8-alpine
[root@vm ~]# docker run -itd --name jetty -p 8080:8080 jetty:9.4.50-jre8-alpine
[root@vm ~]# curl localhost:8080
...
<title>Error 404 - Not Found</title>
[root@vm ~]# docker exec -it jetty sh
~ $ ls
jetty.start lib resources start.d webapps
~ $ cd webapps/
~/webapps $ pwd
/var/lib/jetty/webapps
[root@vm ~]# docker cp /opt/jetty-dis-9.3.29/demo-base/webapps/ 5ec29e6f8d10:/var/lib/jetty/
[root@vm ~]# curl localhost:8080
...
<h1>Welcome to Jetty 9</h1>
tomcat
[root@vm ~]# docker pull tomcat:9-jre8
[root@vm ~]# docker run -itd --name tomcat -p 8080:8080 tomcat:9-jre8
[root@vm ~]# docker exec -it tomcat bash
root@c1e90bc5d1de:/usr/local/tomcat# ls
bin conf lib logs NOTICE RELEASE-NOTES temp webapps.dist
BUILDING.txt CONTRIBUTING.md LICENSE native-jni-lib README.md RUNNING.txt webapps work
https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.8/bin/apache-tomcat-9.0.8.tar.gz
[root@vm ~]# tar xf apache-tomcat-9.0.8.tar.gz
[root@vm ~]# cd apache-tomcat-9.0.8
[root@vm apache-tomcat-9.0.8]# bin/startup.sh
[root@vm apache-tomcat-9.0.8]# ss -antup | grep 8080
tcp LISTEN 0 100 [::]:8080 [::]:*
http://localhost:8080/
Apache Tomcat/9.0.8
[root@vm apache-tomcat-9.0.8]# bin/shutdown.sh
配置操作参考https://blog.csdn.net/weixin_60092693/article/details/123537303
WebLogic
https://www.oracle.com/technetwork/middleware/weblogic/downloads/index.html
[root@vm jetty-dis-9.3.29]# docker pull ismaleiva90/weblogic12
[root@vm weblogic]# docker run -d -p 7001:7001 -p 7002:7002 ismaleiva90/weblogic12:latest
http://localhost:37001/console/
weblogic/welcome1
[root@vm ~]# docker cp jenkins.war f948d1bfb461:/u01/oracle #拿jenkins.war包测试
图形界面点击的部署安装及上下文设置,等待安装完成后,启动服务
访问http://localhost:7001/jenkins/
整体使用有点,web界面点点点,暂时先不深入了解
Jboss似乎有点过时,暂不了解