Tag: Tomcat

将其作为服务公开后,无法在kubernetes中运行tomcat容器

我在Google中创build了kubernetes集群,可以引擎。 我在kubernetes中运行两个豆荚,每个豆荚都运行tomcat容器。 我想通过我的浏览器或curl命令访问集群外部的这个tomcat应用程序。 我创build了一个服务作为负载平衡器给了我一个外部IP地址和端口。 当即时通讯尝试浏览http://:端口,它不响应,它说连接超时。 我也打开了这个IP地址和特定端口的防火墙。 有人可以帮我找出是否在这里丢失任何东西。 我已经跟随所有的文档,甚至试图运行它作为node_port服务,但也没有工作。 谢谢Abhishek Somani

Tomcat Docker容器:安装为容器webapp目录的主机webapp目录

我试图部署位于我的主机操作系统(Windows 10)的Java Web应用程序,我想将所提到的webapp作为Tomcat Docker Container(位置/usr/local/tomcat/webapps/mywebapp )下的一个目录进行安装。 我在Dockerterminal中运行以下命令(在Windows中是我的webapp的绝对path)。 注意:“mywebapp”主机目录已经包含已部署/未压缩的war。 docker run –name=tomcat_7_0_78 –detach –publish 8080:8080 -v /c/desarrollo/workspace/webMavenTest/target/mywebapp:/usr/local/tomcat/webapps/mywebapp tomcat:7.0.78 我可以看到,Tomcat启动,webapps容器文件夹里面有几个默认的webapps,包括“mywebapp”文件夹。 问题是它是空的,所以Web应用程序不工作。 我想用它来将我的应用程序集成到Eclipse IDE中,并通过IDE来实现重新部署应用程序。 任何见解? 提前致谢。

如何访问Windows的Tomcat服务器来build立从Docker文件的Docker镜像,而无需下载新的Tomcat?

我是Docker的新手。 我为.war文件创build了docker文件。 当我从Docker文件构buildDocker镜像时。 它开始下载tomcat8但是,我想使用Tomcat,我已经在我的窗口中创build从docker文件的docker图像,而不是从互联网上下载。 Docker文件 FROM tomcat:8.5.11-jre8 COPY helloaws.war /usr/local/tomcat/webapps/helloaws.war 运行命令docker build -t helloaws . 它开始下载tomcat8。 请让我知道是否有任何方法可以使用已经安装的Windows Tomcat服务器。 提前致谢。

Tomcat在启动时冻结在Docker容器中

这是事情。 我有以下的Dockerfile: DOCKERFILE FROM centos:centos7 MAINTAINER Legos ADD epel-release-7-9.noarch.rpm /etc/extras/epel-release-7-9.noarch.rpm RUN rpm -Uvh /etc/extras/epel-release*rpm # Install prepare infrastructure RUN yum -y update && \ yum -y install wget && \ yum -y install tar && \ yum -y install haveged && \ yum -y install rng-tools RUN chkconfig haveged on # Prepare environment ADD jdk* […]

如何让Apache和Tomcat Docker容器相互通话?

我是一个全新的,我想学习。 我有一个目前在Ubuntu 16.04TLS上的Docker容器中运行的webapp。 我可以通过互联网连接,它工作正常。 我想在一个单独的容器中运行Apache前端并启用SSL。 我今天工作了8个小时,我知道我很近。 最后我必须还原虚拟机,以便将webapp重新联机。 我跟着这个教程https://medium.com/@jmarhee/running-multiple-web-applications-on-a-docker-host-with-apache-85f673f02803 ,并成功地能够连接到Apache(我得到默认主页与安装),但无法获得Apache代理Tomcat。 当我启用代理传递时,我得到了一个503错误。 如果你们把我指向正确的方向,我就是在读书。 既然我想学习,我可能会回来更多的问题。 我读了另一篇文章http://stackoverflow.com/questions/24319662/from-inside-of-a-docker-container-how-do-i-connect-to-the-localhost-of-the-mach但我不明白如何把它应用到我的情况。 TIA为您提供的任何帮助。

我应该给tomcat通过源代码Docker卷连接的redis容器的ip地址

我是docker工的初学者。 我的源代码在xyz卷内有一个属性文件,我必须提及redis的ip地址和密码。 这里tomcat无法连接到redis这是我的docker-compose.yml version: "2" services: tomcat: container_name: tomcat build: ./tomcat ports: – "8080:8080" env_file: – ./tomcat/tomcat.env networks: – srikant-network environment: – COMPOSE_HTTP_TIMEOUT=200 volumes: – /opt/xyz:/opt/xyz depends_on: – redis – mysql – elasticsearch redis: container_name: redis build: ./redis ports: – "6379" environment: requirepass: password networks: – srikant-network elasticsearch: container_name: elasticsearch build: ./elasticsearch ports: – "9300:9300" […]

如何修复tomcat的图片漏洞?

我在Bluemix Containers(docker组)中部署了一个Tomcat映像。 我指定的基础图像为“最新”。 Bluemix的Vulnerability Advisors报告了以下漏洞: image registry.ng.bluemix.net/xxx/my-image:1 vulnerability results found 168 packages scanned 1 vulnerable packages libgcrypt20 : current: 1.6.3-2+deb8u3 fixed: 1.6.3-2+deb8u4 我不知道如何解决,并没有在互联网上find任何答案。 任何人都可以帮忙 谢谢。

无法让Hazelcast在Docker Swarm中工作

我一直在试图让Hazelcast在一个运行Amazon EC2的Docker群体中成为一个Tomcat会话复制器(因为Amazon ELB的粘性会话设置拒绝工作,如果有人按照我的另一个问题:P)试图使用Hazelcast Tomcat会话pipe理器( https://github.com/hazelcast/hazelcast-tomcat-sessionmanager )。 我有3个EC2节点,在其上运行Docker Swarm(使用Docker for AWS),并在每个节点上运行一个Tomcat实例。 我不能让每个Tomcat实例上的Hazelcast相互交谈。 多播根本不起作用,即使所有设置都正确,TCP / IP也会导致持续的拒绝连接。 这是tomcat在尝试使用TCP / IP并手动指定IP地址时的错误输出: 25-Jul-2017 16:41:13.934 INFO [main] com.hazelcast.instance.DefaultAddressPicker.null [LOCAL] [dev] [3.8.3] Interfaces is disabled, trying to pick one address from TCP-IP config addresses: [172.31.23.183, 172.31.8.28, 172.31.37.34] 25-Jul-2017 16:41:13.934 INFO [main] com.hazelcast.instance.DefaultAddressPicker.null [LOCAL] [dev] [3.8.3] Prefer IPv4 stack is true. 25-Jul-2017 16:41:13.936 […]

在不同的docker集装箱中无缝地托pipe网站的不同部分

我有一个网站,我正试图转换为docker解决scheme。 网站的一部分是CMS(特别是WordPress),还有一些目前由tomcat处理的Java web应用程序。 目前的做法是我有一个官方的WordPress容器和一个官方的Tomcat容器。 我将自定义内容加载到WordPress(通过一个不是真正属于这个问题一部分的MySQL容器),并将WAR文件加载到Tomcat中。 所以问题是这样的:WordPress网站的部分链接到Java应用程序。 以前,其中一些链接是相对链接,就像/Application1一样简单,用户可以访问Java应用程序。 现在,因为它们被托pipe在不同的容器中,所以我不能这样做,因为WordPress容器中没有任何名为“Application1”的东西。 我已经用这样的RewriteRules修改了WordPress容器的htaccess文件: # Tomcat exposes port 8085 RewriteRule ^.*Application1/(.*)$ http://localhost:8085/Application1/$1 [R,L] 但是这意味着如果用户在wordpress中点击Application1的链接,他们的浏览器就会把它们redirect到localhost:8085 – 如果你在本地运行这个容器集合,但是不能用于远程用户,那么这个工作正常。 我可以将localhost更改为将运行的服务器的实际名称。 但是,这将需要手动更新此堆栈将运行的每个服务器,或重置为本地主机的开发人员。 我可以将WordPress和Tomcat结合到一个容器中,但是我们希望将它们分开,以便在我们需要升级时,只需更改我们正在提取的容器的版本,而不必从头重新构build自定义容器。 有没有一个更无缝的方式来做到这一点,以便用户的浏览器中的URL永远不会改变? 有没有办法让这个工作,以便远程用户甚至不知道该网站的不同部分被托pipe在不同的容器?

由于内存中断,Tomcat被Docker容器杀死

我最近正在用tomcat开发一个rest服务。 我设置了JAVA_OPTS = -Xmx1648m -Xmn1648 -server并确保它们已经生效。 docker正在运行,内存限制设置为4g。 我们的观察是,tomcat进程的内存使用量不断增长,最终达到4g。 然后,内存成本在几分钟到几小时之间随机地保持在99%〜100%之间。 然后,tomcat进程崩溃没有任何错误,如jvm堆oom。 我使用jmap来转储堆时,由docker统计观察的内存消耗大约3.5克。 转储文件大小在400m以下。 使用mat来分析转储文件显示大部分内存部分实际上可能被垃圾收集。 我也手动运行jcmd pid GC.run,这大大减less了内存使用(从2g到1.4g)。 我的检查是,tomcat从来没有达到jvm设置的限制,否则,应该有关于jvm堆oom的错误日志。 然后,内存应该被jvm或tomcat中的其他线程使用。 但是我找不到解决这个问题的办法。 请帮忙!