代码之家  ›  专栏  ›  技术社区  ›  bos570

为java jersey应用程序创建docker容器

  •  0
  • bos570  · 技术社区  · 7 年前

    我已经在这上面呆了很长一段时间了,在任何地方都找不到解决方案。我正在使用jersey框架编写一个JavaREST服务,maven是ApacheTomcat上托管的包管理器。

    这个项目在当地运作得非常好。我想对应用程序进行dockerize,但我确实很挣扎。我已经启动并运行了tomcat容器,当我转到应用程序的根目录时,我可以看到我的简单hello文本。所以当我去 http://xxx:8888/npmanager/ 在这一点上,我看到了我的期望。

    现在,当我试图击中我的任何端点,即 https://xxx:8888/npmanager/api/XXX 我得到一个500错误:

    已检测到资源和/或提供程序类的警告: 严重:缺少字段的依赖项:private 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 回复  |  直到 7 年前
    推荐文章