【问题标题】:Can't run jax-rs app on docker with tomcat无法使用 tomcat 在 docker 上运行 jax-rs 应用程序
【发布时间】:2019-01-19 18:37:47
【问题描述】:

我是 Java 开发新手,正在开发一个 jax-rs 应用程序来创建 restful web 服务。我的应用程序在本地安装的 tomcat 服务器上运行良好,我可以完美地构建和运行。

我想将应用程序 dockerize 以供开发使用,但似乎无法弄清楚这是如何工作的。我之前在 LAMP 堆栈上使用过 docker,在创建开发环境时没有遇到任何问题,但就是无法让我的应用正常工作。

这是我的 Dockerfile:

FROM tomcat:8.0.43-jre8
ADD "C:\\Users\\My Directory\\Documents\\Projects\\npmanager\\target" /usr/local/tomcat/webapps/
EXPOSE 8080
CMD chmod +x /usr/local/tomcat/bin/catalina.sh
CMD ["catalina.sh", "run"]

运行以下命令:

docker build -t mytomcat .
docker run -d -p 8888:8080 --name tomcat_cont mytomcat

当我去本地路由 docker 购买我的应用程序时,我可以看到 tomcat 出现了,我的应用程序仍然无法正常工作。

我尝试 ssh 进入 docker 容器,发现 /usr/local/tomcat/webapps/ 没有我的本地文件。

这是我的 jax-rs 应用程序的样子:(尚未使用 docker-compose)

【问题讨论】:

    标签: java docker tomcat jax-rs


    【解决方案1】:

    ADD 是相对于构建目录的。看起来当你运行docker build [...] . 时你在npmanager Maven Webapp 目录中,所以你应该能够添加相对于. 的路径:

    ADD target/ /usr/local/tomcat/webapps/
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-24
      • 2015-08-13
      • 1970-01-01
      • 1970-01-01
      • 2018-12-08
      • 2015-05-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多