【问题标题】:How to access War File Build deployed in Tomcat Docker Container after deleting root删除root后如何访问部署在Tomcat Docker Container中的War File Build
【发布时间】:2016-12-20 16:22:46
【问题描述】:

我的 docker 文件:

FROM tomcat

MAINTAINER "Shan Khan <xxx@gmail.com">

RUN ["rm", "-rf", "/usr/local/tomcat/webapps/ROOT"]

COPY ROOT.war /usr/local/tomcat/webapps/

CMD ["/usr/local/tomcat/bin/catalina.sh", "run"]

运行方式:

sudo docker build -t webserver
sudo docker run -it --rm -p 8080:8080 webserver

tomcat 正在运行,但我无法在 localhost:8080 或 localhost:8080/ROOT 中访问

【问题讨论】:

    标签: java ubuntu tomcat docker


    【解决方案1】:

    当我为一个工作项目执行此操作时,我似乎记得必须将应用程序部署到 Tomcat 根目录。

    Deploying my application at the root in Tomcat

    所以基本上你需要在你的 Dockerfile 中添加一些步骤来完成这个。

    【讨论】:

    • 我已经尝试添加它并将其放入 ROOT 文件夹中,更新了 docker 文件,但 localhost 现在显示的是空白页面而不是这个 war 文件。
    • 这里接受的答案也敲响了警钟:stackoverflow.com/questions/7276989/…。抱歉,我已经有一段时间没有这样做了。
    • 我已经实际尝试过,更改了问题,并删除了根文件夹,然后运行它,同样的问题
    【解决方案2】:

    不要使用CMD ["/usr/local/tomcat/bin/catalina.sh", "run"],而是尝试使用ENTRYPOINT ["/usr/local/tomcat/bin/catalina.sh", "run"]

    如果这不能解决您的问题,请尝试查看日志。在日志中,您会看到类似deploying webapp ROOT 的内容。如果您没有看到此日志但收到了server startup took ***ms,则尝试在本地检查war 文件,或者通过连接到docker 容器查看logs 文件夹内的catalina.out 文件中是否弹出一些错误。 (docker ps- 命令检查运行 dockerfile 的 docker 容器)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-16
      • 2017-02-03
      • 2012-06-05
      • 1970-01-01
      • 2018-02-13
      • 1970-01-01
      • 1970-01-01
      • 2015-05-29
      相关资源
      最近更新 更多