Tag: Tomcat

Maven WAR Build for Tomcat:“无法打开ServletContext资源”

关于这个话题已经有一些问题了,但是我的Tomcat运行还不顺畅。 我的工作空间包括jsf和spring。 只要我在Eclipse中构build和运行locale中的项目并将其部署到Eclipse中的Tomcat中,一切都运行良好。 但是现在我想将war文件部署到外部Tomcat中,在我的情况下是Docker-Container中的Tomcat。 所以我做的是: *使用以下Maven-pom(摘录)构buildWAR文件。 *并将战争文件复制到我的正在运行的容器,如下所示: docker cp projectName.war containerID:/ usr / local / tomcat / webapps / 在Tomcat启动期间,我总是得到以下错误。 一开始,我已经将applicationContext.xml文件直接放在WEB-INF文件夹中。 但是我知道在“\ WEB-INF \ classes”中使用它会更好,所以我将它移动到那里,并在web.xml中执行了以下context-Location-parameter。 所以工作空间的Hierarchy看起来像下面的图片projectName | – 网页内容 | – WEB-INF | – pom.xml 另一件事是,当我在构build之后提取war文件以查看applicationContext.xml文件的实际位置时,我在“\ WEB-INF \ classes”中find了它,但是在web中的context-Location-parameter .xml缺lessfind它。 我也试着把applicationContext.xml -File的副本放到src / main / resources中 ,这导致,这个文件位于WAR文件的正确位置,但web.xml改变了。 有人build议在何处放置applicationContext.xml文件,以及如何在构build过程中包含和指向正确的方法。 此外,为什么web.xml在构build过程中发生变化。 还是有一个完全不同的问题? 感谢帮助。 的pom.xml <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <properties> […]

javax.naming.NameNotFoundException:名称未在此上下文中绑定。 无法find

我在tomcat 8.0.41上部署了一个webapp。 该webapp应该连接到一个MySQL服务器5.7。 值得一提 tomcat和mysql服务器都是作为docker-container运行的。 这就是为什么msyql-url是:“jdbc:mysql:// db:3306 / ProjectDB”。 jdcb-jar通过docker-compose添加到tomcat。 但我认为这不应该是错误的根源。 ConnectionBuilder.java package Persistence; import java.sql.Connection; import java.sql.SQLException; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.sql.DataSource; public class ConnectionBuilder { public Connection conn; public ConnectionBuilder()throws NamingException, SQLException { Context intitialContext = new InitialContext(); Context environmentContext = new InitialContext(); environmentContext = (Context) intitialContext.lookup("java:comp/env"); DataSource dataSource = […]

托pipe在centos:centos7 docker容器上的Tomcat无法查看容器外部的网页

我设置了一个docker容器,它有一个172.17.0.2的nat'd ip(从我的centos virtualbox映像,通过nat)。 如果我进入容器的IP(我知道,不好的做法)ssh并打开Firefox,我可以看到服务托pipe在172.17.0.2:8080,但在容器外我不能(虽然我可以ping它)。 我最初认为这是一个防火墙规则,但图像甚至不支持防火墙访问(虽然主机虚拟机)。 我做了一个docker运行–expose = 8080到容器,它仍然导致我无法查看容器上托pipe的Web服务。 我宁愿使用docker的IP来查看内容,而不是尝试通过主机的IP转发端口(即我的virtualbox图像这是一个192.168.3.x地址)。 我认为这可能是在virtualbox图像本身(vs容器)上的防火墙问题。 如果是这样,我很困惑,networking的工作原理,因为我的docker集装箱似乎有一个虚拟的NAT NAT。

在提交的DOCKER容器中,新的容器未能在Raspberry PI 3中运行TOMCAT9

没有解释我成功运行在树莓派3 Tomcat / 9.0.0.M17见: https : //github.com/ailgorbot/OuiMaitre 但是当我试图再次与docker拉我失败了,但一步一步在armhf / debian容器它的工作有时…怪异的。 无论如何。 所以我决定保存Tomcat在8002端口运行良好的容器。 root@rpi3:~# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4d10d9dc9141 armhf/deb-ailgor-jdk8 "bash" 4 hours ago Up 8 minutes 0.0.0.0:8009->8009/tcp, 0.0.0.0:8002->8080/tcp agitated_feynman root@rpi3:~# docker stop 4d10d9dc9141 4d10d9dc9141 root@rpi3:~# docker commit 4d10d9dc9141 tomcat9 sha256:70fe2bf13a7b9a3443ead3a84226a60e149bdbd0147639cd6f4ac7b107632d83 root@rpi3:~# docker run -itd -p 8002:8080 -p 8009:8009 […]

如何访问部署的战争,docker的webapp部署文件夹

我有一个FROM tomcat:7.0.75-jre8容器, FROM tomcat:7.0.75-jre8 它下载geoserver 2.10.2 war ,并部署到tomcat 。 一切都很好…但是…我需要访问tomcat的webapps文件夹中的部署文件夹,以便添加扩展,如MySQL数据库插件,Oracle数据库插件甲骨文的JDBC驱动程序等,这需要在我的dockerfile内自动发生。 集装箱docker风格的build造,这是很好的…但与Tomcat的另一个问题。 总之,我需要访问WEB-INF 当我build立,我认为webapps文件夹将不会被创build,直到我的最后一行运行catalina.sh被执行正确吗? 即: EXPOSE 8080 CMD ["catalina.sh", "run"] 我已经尝试运行,然后/bin/bash炮击到图像,但webapp文件夹不存在。 我必须错过简单的东西…? 有没有办法强制tomcat生成部署webapp文件夹,所以我可以访问WEB-INF等 编辑2:在部署之前修补战争可能是一个解决scheme。 即只是解压缩war文件(你可以重命名为压缩,因为它的确是一个zip文件)。 然后做所有我需要的修改,即jar插件文件到/WEB-INF/lib 。 然后重新压缩,重新命名为.war扩展名,并按照正常部署。

apacheds和tomcat docker容器之间的连接问题

我们在tomcat容器中运行的java web应用程序需要连接10389端口上的apacheds容器,如下图所示。 Tomcat容器在8080上运行,并在10389上运行 这是我们尝试连接到tomcat端口8080的apacheds容器,它在运行正常的tomcat容器中公开 这是我们试图连接到apacheds端口10389的tomcat容器,它在运行apacheds容器时暴露

Docker tomcat警告:无法从加载服务器configuration

我有一个稍微复杂的设置。 我首先build立并以root身份运行tomcat docker容器。 我已经装载server.xml(因为我有自定义configuration)。 它运行良好,为我们的交通服务了好几个月。 然后我决定不以root身份运行它,并创build一个用户来运行docker容器。 我删除了以前的docker容器,包括dockertomcat图像。 我build立了一个新的镜像,并使用–user $(id -u)和新用户运行tomcat容器。 server.xml被挂载,文件被我创build的新用户拥有。 但是,tomcat容器不会启动。 我看到下面的错误消息没有例外或堆栈跟踪: Using CATALINA_BASE: /usr/local/tomcat <br> Using CATALINA_HOME: /usr/local/tomcat <br> Using CATALINA_TMPDIR: /usr/local/tomcat/temp<br> Using JRE_HOME: /usr/lib/jvm/java-8-openjdk-amd64/jre<br> Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar<br> tomcat WARNING: Unable to load server configuration from >[/usr/local/tomcat/conf/server.xml]<br> SEVERE: Cannot start server. Server instance is not configured.<br>

SpringBoot与Tomcat使用大约190mb的内存。 什么过程在Springboot中运行?

我正在SpringBoot上运行一个应用程序,该应用程序在Docker容器中包含一个embedded式Tomcat。 我已经给了我的最大堆大小为64MB。 不过,我看到总的内存消耗约为190MB。 如果我尝试启动内存限制为128mb的容器,容器将无法启动。 还有哪些其他进程将与tomcat和app一起运行? 如何知道哪个进程正在消耗内存?

从外面访问docker集装箱内的networking服务器

我想访问我的Tomcat Web服务器在另一台计算机的Docker容器中运行。 现在我有一个docker-compose.yml文件,我用命令docker docker-compose up -d tomcat: image: tomcat ports: – "8000:8080" volumes: – ./CloudComputing.war:/usr/local/tomcat/webapps/CloudComputing.war links: – mongo mongo: image: mongo 从另一台计算机访问networking服务器需要更改什么? Docker客户端版本:17.03.1-ce

使用Docker和Kubernetes进行Tomcat部署

我对kubernetes非常陌生,它是如何工作的,但我知道它的定义。 我想看看它是如何工作的。 我对docker工具和它的function很安静。我有这个任务,我想很快完成。 你能不能指导我一步一步地走下去。 创build一个运行Tomact的Docker镜像。 它应该运行的端口是5000. tomcat应用程序应该使用kubernetes在Docker容器中以集群模式运行centos。 您可以在解决scheme中使用任何开源负载平衡器(如HAproxy)。 需要build立监控,确保系统资源得到正确利用。 您可以select您自己的监测解决scheme,如Promethues,Sensu,Nagios,Zabbix等。您也可以附加仪表板。 Docker容器应该将日志文件永久存储在Docker守护进程正在运行的基本机器中。 您可以自由使用任何configurationpipe理工具,如SaltStack,Ansible,Puppet,Chef等。 我已经完成了在这两台机器上启动2 aws ec2 ubuntu实例并安装docker。 接下来我应该做什么?