在 docker 中与 tomcat 运行战争

Posted

技术标签:

【中文标题】在 docker 中与 tomcat 运行战争【英文标题】:Run war with tomcat in docker 【发布时间】:2016-09-25 03:10:31 【问题描述】:

我关注了1 和2 这两个帖子,但都没有工作。我目前正在使用以下内容构建我的 tomcat。

构建文件

FROM tomcat:8.0

COPY server/build/libs/server.war /usr/local/tomcat/webapps/server.war

CMD ["catalina.sh", "run"]

终端

docker build -t my_server .

docker run -it -rm -p 8080:8080

当我转到http:localhost:8080 时,我看到了经理主页,但http:localhost:8080/serverhttp:localhost:8080/server/webapp/ 没有出现。我的终端告诉我,我的战争正在增加,但没有任何迹象表明它已扩大

 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive /usr/local/tomcat/webapps/server.war has finished in 2,518 ms

【问题讨论】:

你可以在这里粘贴你的 web.xml 吗?这是我们可以看到端点前缀的地方。 【参考方案1】:

要删除管理器应用程序,您需要在将 WAR 复制到 DockerFile 之前输入以下 RUN 命令。

运行 rm -rf /usr/local/tomcat/webapps/*

上述命令删除了tomcat中可用的默认应用。

您的应用程序应该在 http:localhost:8080/server/ 上可用

【讨论】:

以上是关于在 docker 中与 tomcat 运行战争的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot 未在 Eclipse 中与 Tomcat 一起运行

无法在 Apache Tomcat 6 上部署战争

使用 Jenkins 将战争文件部署到 Tomcat 的推荐方法?

eclipse vs tomcat部署-项目在eclipse中运行时导出的战争(部分)失败

在 Tomcat 上通过 IntelliJ 部署 SpringBoot(休息服务)战争给出 404

在 tomcat 中部署战争后,Java 文本规范化的行为有所不同