java - 在 docker 中与 tomcat 开战

标签 java tomcat docker

我关注了这两个帖子 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/ 不显示。我的终端告诉我我的 war 正在添加,但没有任何内容表明它已扩展

 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

最佳答案

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

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

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

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

关于java - 在 docker 中与 tomcat 开战,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37472279/

相关文章:

windows - 在 Docker、tensorflow、Windows 10 中使用本地文件系统和 MySQL 数据库

java - JavaFX 中的 TextFlow 不显示任何内容

java - struts2 spring项目运行在jetty和tomcat上

apache - 基于完整域名重新路由http请求

docker - 如何在构建期间将凭据带入 Docker 容器

php - Docker 安装 memcached

java - 为什么使用十六进制常量?

java - 可以将我的公共(public)接口(interface)放入他们自己的包中

java - 在android中将数据从一个 fragment 传递到下一个 fragment

tomcat - 在我的服务器上将端口 80 转发到 8080 是否可以阻止端口 8080 的用户访问我的网站?