我在获取Spring Boot API以在Azure应用服务上工作时遇到问题。我已经在https://docs.microsoft.com/en-us/java/azure/spring-framework/deploy-spring-boot-java-web-app-on-azure上遵循了微软的指南,但到目前为止还没有成功。
应用程序确实会启动(我可以在日志文件中看到应用程序启动),但对应用程序服务url的http请求总是以超时结束。
我读到Azure应用程序服务只挑选运行在端口80或8080上的嵌入式tomcat服务器,但也没有运气。
该应用程序部署在www根目录中,并且还部署了一个适当的web.config。
我尝试过在有或没有应用服务器(Tomcat和Jetty,因为服务器嵌入在应用程序中)的情况下运行App Service,但这两种方法都失败了。
我是不是遗漏了一些其他配置部分?或者这可能与我在azure上使用的计划类型有关?也许是资源方面的问题?
有什么建议吗?
Thx
伯特
发布于 2017-12-11 16:32:14
事实证明,我的预感是azure资源的一个问题是正确的。扩展资源内存和CPU解决了此问题。
发布于 2017-12-08 01:50:05
为了让Springboot应用程序运行,您需要上传JAR文件并添加web.config文件。
要向服务传达您正在尝试运行的内容,您需要将web.config文件添加到应用程序服务的site\wwwroot文件夹中。因为您已经创建了web.config文件,所以使用Maven添加以下内容,并动态地将项目/版本包含在包中。
<build>
<resources>
<resource>
<directory>${project.basedir}/wwwroot</directory>
<filtering>true</filtering>
<targetPath>${basedir}/target</targetPath>
</resource>
</resources>
</build>
现在将jar文件和web.config放在Azure应用程序服务中。
您只需检查一次是否创建了web.config文件,如下所示。
<?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% -jar "%HOME%\site\wwwroot\@project.artifactId@-@project.version@.jar"">
</httpPlatform>
</system.webServer>
</configuration>
https://stackoverflow.com/questions/47700526
复制相似问题