为Java jersey app创建docker容器

时间:2019-03-17 19:40:19

标签: java docker jersey

我已经坚持了好一阵子,在任何地方都找不到解决方案。我正在使用jersey框架,将maven作为托管在Apache Tomcat上的软件包管理器来编写Java Rest服务。

该项目在本地运行良好。我想对应用程序进行docker化,并且确实很挣扎。我已经启动并运行了tomcat容器,当我进入应用程序的根目录时,我可以看到简单的hello文本。因此,当我现在进入http://xxx:8888/npmanager/时,我已经看到了我的期望。

现在,当我尝试击中任何端点时,即https://xxx:8888/npmanager/api/XXX,我将收到500错误:

  已检测到资源和/或提供程序类的

警告:   严重:缺少字段依赖性:私有org.glassfish.jersey.server.wadl.WadlApplicationContext org.glassfish.jersey.server.wadl.internal.WadlResource.wadlContext

文档文件:

FROM tomcat:8.5.38
ADD ./target/npmanager.war /usr/local/tomcat/webapps/
CMD chmod +x /usr/local/tomcat/bin/catalina.sh
CMD ["catalina.sh", "run"]

docker-compose.yml

version: '3'

services:

tomcat-dev:
  build: .
  environment:
    TOMCAT_USERNAME: root
    TOMCAT_PASSWORD: root
  ports:
    - "8888:8080"

mysql-dev:
  image: mysql:8.0.2
  environment:
    MYSQL_ROOT_PASSWORD: root
    MYSQL_DATABASE: npmanager
  volumes:
    - /mysql-data:/var/lib/mysql
  ports:
    - "3308:3306"

0 个答案:

没有答案