无法在Openshift中部署Spring Boot应用程序

时间:2018-04-12 19:06:18

标签: java spring spring-boot heroku openshift

我按照以下步骤运行我的Spring Boot应用:https://github.com/debasen/springboot-demo.git中的Open shift

  1. 将Red Hat OpenJDK8添加到我的项目中。
  2. enter image description here 2.接下来 enter image description here 3.添加命中存储库 enter image description here

    这样做之后。我在Build中获得以下Log:

    const
       MAXIMAGESIZE = ???;
       IMAGEOVERSIZE = 'Image size is larger than allowed';
    ..
      ...
      try
          JpegImage.Assign(Image1.Picture);
          JpegImage.SaveToStream(Stream);
          if Stream.Size <= MAXIMAGESIZE then begin
              dtm.cds.Post;
              dtm.cds.ApplyUpdates(-1);
          end else begin
              dtm.cds.Cancel;
              raise Exception.Create(IMAGEOVERSIZE);
          end;
      finally
          Stream.Free;
      end;
    

    部署失败并显示以下日志:

    Cloning "https://github.com/debasen/springboot-demo.git " ...
        Commit: c3b500b7c27540de6f1ef90734aca8b1a09d6fb6 (Initial Commit)
        Author: Admin <Admin@DESKTOP-78DNBRA>
        Date:   Sun Mar 18 20:48:29 2018 +0530
    Pulling image "registry.access.redhat.com/redhat-openjdk-18/openjdk18-openshift@sha256:afe904fd986c4147d1905813eb1a2f5bc3480ecad5b70b4ccfec384271777429" ...
    ==================================================================
    Starting S2I Java Build .....
    S2I source build with plain binaries detected
    Copying binaries from /tmp/src to /deployments ...
    ... done
    
    Pushing image docker-registry.default.svc:5000/boot-test1/spring-demo:latest ...
    Push successful
    

    由于在构建时没有创建jar,因此部署失败。 虽然示例存储库https://github.com/jboss-openshift/openshift-quickstarts中的项目工作正常。 我试过Heroku来托管我的应用程序。它在Heroku中工作正常。 但不是在Openshift工作。请告诉我我错过了什么。

2 个答案:

答案 0 :(得分:3)

构建日志没有报告显式错误,但表明实际上没有构建任何内容:

S2I source build with plain binaries detected
Copying binaries from /tmp/src to /deployments ...
... done

your repo“隐藏”父文件夹中的应用来源时,请尝试将contextDir(默认情况下为/)指定为springboot-demo以进行构建,或将应用程序源移动到git存储库的根目录。

您可以oc使用oc edit bc/<build_config_name> CLI编辑构建配置,或者在您使用网页界面时通过点击“高级选项”链接进行相同操作在从目录部署应用程序期间提供git repo URL,或者使用 Actions - &gt;浏览现有构建配置时,编辑菜单项。

答案 1 :(得分:0)

我遇到了同样的错误。但是,对我来说,解决方案是使应用程序生成 Jar ,而不是 War

我使用maven打包应用程序。因此,在pom.xml中,我更改了

<packaging>war</packaging>

<packaging>jar</packaging>