为了账号安全,请及时绑定邮箱和手机立即绑定

使用 FTP 将 Spring Boot app.jar 部署到 Azure 不起作用

使用 FTP 将 Spring Boot app.jar 部署到 Azure 不起作用

aluckdog 2022-05-21 17:19:27
我正在尝试将本地构建的 Spring Boot 应用程序部署到 Azure App Service。注意我是使用 Azure 的新手。我使用 Azure Portal 创建的 App Service 具有以下特点:Stack:Java SE (JRE 8)这应该使运行应用程序成为可能。我还添加了以下应用程序设置(环境变量):JAVA_OPTS:-Dserver.port=80SPRING_PROFILES_ACTIVE:prod这应该设置正确的服务器端口,假设端口80是我应该使用的正确端口。我读了这个其他帖子。第二个应用程序设置将确保prod使用应用程序内部的配置文件。我使用 FTP 连接到应用服务并删除default.jar并上传了自己app.jar的应用服务,然后重新启动应用服务。我收到一条通知,应用程序已重新启动,但它似乎不起作用。我无法访问该应用程序,但我也无法找到日志文件。在 Azure 门户中尝试日志流仅提供有关Starting container for site和 docker 相关日志的信息,而不是我的应用程序的日志。我想知道在哪里进行故障排除。请注意,我使用的是 FTP 部署选项,因为我的应用程序是使用 Gradle 构建的,而 Azure 似乎只有一个用于部署应用程序的 Maven 插件。
查看完整描述

2 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

发生了几件事。添加提到的 web.config 后,应用程序正在部署。

A fatal error has been detected by the Java Runtime Environment是由于使用内存和磁盘存储的组合使用 Ehcache。

从应用程序中删除 Ehcache 后,应用程序仍然无法运行,根据日志我发现应用程序没有在230s. 将应用程序设置更新为WEBSITES_CONTAINER_START_TIME_LIMIT有效后1800

我不知道为什么该应用程序需要这么长时间才能启动。查看日志并没有在某个区域花费大量时间;它只是逐渐缓慢。8s这些应用程序在 Heroku本地和20s.


查看完整回答
反对 回复 2022-05-21
?
慕森王

TA贡献1777条经验 获得超3个赞

应用服务支持在 Windows 和 Linux 上运行 java。Web.config 工件仅在 Windows 上运行时有效,并且对于您的情况,因为您使用的是应用服务 Linux,所以根本不会使用此工件。

我们还有一些可以调整的设置,例如 WEBSITES_CONTAINER_START_TIME_LIMIT,但还有其他一些设置,例如 WEBSITES_PORT 来配置您的容器将使用的端口。请查看常见问题解答: https ://docs.microsoft.com/en-us/azure/app-service/containers/app-service-linux-faq

另请查看应用服务的 Java 开发人员指南: https ://docs.microsoft.com/en-us/azure/app-service/containers/app-service-linux-java

谢谢,


查看完整回答
反对 回复 2022-05-21
  • 2 回答
  • 0 关注
  • 144 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信