如何在Azure App Service上部署jHipster,我有500个请求超时

时间:2017-10-28 13:35:34

标签: azure spring-boot deployment jhipster azure-web-app-service

Microsoft提供的此指南适用于SpringBoot App

https://docs.microsoft.com/en-us/azure/app-service/app-service-deploy-spring-boot-web-app-on-azure

基本上是:

  1. 创建用于Java的Azure Web应用程序
  2. 指定Java版本
  3. 获取FTP部署凭据
  4. 上传您的SpringBoot .JAR以及提供的web.config
  5. 通过Azure门户重启网络应用
  6. 该应用有效!
  7. 而不是.jar,jHipster正在生成.war文件。由于它基本上是相同的(即它可以用java -jar执行),我希望这些步骤也适用于.war

    我上传了:

    1. .war档案
    2. .war.original档案
    3. web.config
    4. 这是前面提到的web.config。请注意我已将-jar重命名为-war

      <?xml version="1.0" encoding="UTF-8"?>
      <configuration>
        <system.webServer>
          <handlers>
            <add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
          </handlers>
          <httpPlatform processPath="%JAVA_HOME%\bin\java.exe"
              arguments="-Djava.net.preferIPv4Stack=true -Dserver.port=%HTTP_PLATFORM_PORT% -war &quot;%HOME%\site\wwwroot\gmbgenpro-0.0.1-SNAPSHOT.war&quot;">
          </httpPlatform>
        </system.webServer>
      </configuration>
      

      应用加载的时间太长,我得到了500 request timed out.

      编辑:我在web.config中启用了stdout,我从日志文件中获得了以下内容:

      Error: Could not create the Java Virtual Machine.
      Error: A fatal exception has occurred. Program will exit.
      Unrecognized option: -war
      

      所以我似乎无法使用-war参数,而且我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

要将JHipster项目部署为WAR文件,请确保在启用spring-boot.repackage.skip选项的情况下进行构建。这将跳过构建可执行的WAR文件的过程,而仅将WAR文件通常打包在$ {finalName} .war下。这样,您可以将应用程序部署到自动为您配置的Azure上的Web运行时。

要继续进行部署,请按照以下步骤操作:

  1. 将以下Maven插件配置添加到pom.xml的主要元素中:

     <plugin>
         <groupId>com.microsoft.azure</groupId>
         <artifactId>azure-webapp-maven-plugin</artifactId>
         <!-- check Maven Central for the latest version -->
         <version>1.3.0</version>
         <configuration>
             <resourceGroup>your-resource-group</resourceGroup>
             <appName>your-app-name</appName>
             <linuxRuntime>tomcat 9.0-jre8</linuxRuntime>-->
         </configuration>
     </plugin>
    
  2. 使用以下命令构建项目,并相应地调整配置文件:

    ./mvnw clean package -Pdev -Dspring-boot.repackage.skip=true
    
  3. 部署您的应用程序:

    ./mvnw azure-webapp:deploy
    

有关适用于Azure App Service的Maven插件的最新信息,请选中documentation