最近有人在 AWS 应用程序运行器上部署过 python 应用程序吗?我尝试了很多不同的方法,但它们都失败并出现相同的错误
01-01-2025 04:44:22 PM [AppRunner] Health check failed on protocol `HTTP`[Path: '/'], [Port: '8080']. Check your configured port number. For more information, see the application logs.
01-01-2025 04:44:35 PM [AppRunner] Deployment with ID : 9719e0a9f3814a5d88c90569994bb10c failed. Failure reason : Health check failed.
我从 python 应用程序开始,然后转向简单的 python hello world 示例,如下所示 https://github.com/Sathyvs/apprunner https://github.com/adamjkeller/simple-apprunner-demo(这是作者放在 YouTube 视频上的代码,显示一切正常工作,但是当我分叉这个存储库并运行它时,我得到了相同的结果以上问题。
我已经尝试过了
但每次尝试都在同一步骤失败。如果您在这里看到此文件https://github.com/Sathyvs/apprunner/blob/main/server.py 我添加了一些日志,虽然我在本地计算机中看到启动日志,但我在应用程序运行器上看不到任何应用程序日志,它只提供相同的有限日志,并且没有关于正在发生的情况的附加信息部署?
代码位于 https://github.com/Sathyvs/apprunner/tree/main 服务器.py
from wsgiref.simple_server import make_server
from pyramid.config import Configurator
from pyramid.response import Response
import os, logging
logging.basicConfig(level=logging.INFO, stream=sys.stdout)
logger = logging.getLogger(__name__)
def hello_world(request):
name = os.environ.get('NAME')
if name == None or len(name) == 0:
name = "world"
message = "Hello, " + name + "!\n"
logger.info("api called")
return Response(message)
if __name__ == '__main__':
port = int(os.environ.get("PORT"))
logger.info(f"running main application and listening on port {os.environ.get("PORT")}")
logger.info(f"value of my port {os.environ.get("MY_PORT")}")
with Configurator() as config:
logger.info("configuring apis")
config.add_route('hello', '/')
config.add_view(hello_world, route_name='hello')
app = config.make_wsgi_app()
server = make_server('0.0.0.0', 8080, app)
logger.info("starting server")
server.serve_forever()
Dockerfile
FROM public.ecr.aws/amazonlinux/amazonlinux:latest
RUN yum install python3.7 -y && curl -O https://bootstrap.pypa.io/get-pip.py && python3 get-pip.py && yum update -y
COPY . /app
WORKDIR /app
RUN pip3 install -r requirements.txt
CMD python3 server.py
EXPOSE 8080
是否有人面临过这些挑战并实际在 App runner 中部署了应用程序? 有没有实际在 app runner 上运行 python 应用程序的示例?应用程序运行器真的可以工作吗?
我感谢任何帮助或线索,甚至可以找到更多有关正在发生的事情的日志。谢谢。
感谢您的评论并尝试复制该问题。由于我的所有尝试都失败了,我联系了 AWS 支持,他们提到,他们刷新了我的帐户,之后我就可以毫无问题地部署示例或启动指南示例。这是他们的评论
我想通知您,根据您的账户使用情况,您的 AWS 账户与 Apprunner 服务相关的配额受到限制,因为 Apprunner 实例未在 Apprunner 服务中启动,从而导致应用程序未启动(因此不生成应用程序日志),因此,运行状况检查失败。此外,您的帐户活动在每个区域内都会受到持续监控,并且这些配额会根据您的使用情况自动增加。