小编Ant*_*ker的帖子

运行 sls 部署时无服务器挂起。Docker 命令未结束

我遵循本教程是为了使用 python 设置无服务器 AWS lambda。

我想使用无服务器 lambda 运行这个简单的 httprequest 函数(位于 httprequest.py 中):

import requests

def handler(event, context):
    r = requests.get("https://news.ycombinator.com/news")
    return {"content": r.text}
Run Code Online (Sandbox Code Playgroud)

以下是我的serveless.yaml:

service: serverlessProj
frameworkVersion: '2'

provider:
  name: aws
  runtime: python3.8

functions:
  hello:
    handler: hello.handler
  httprequest:
    handler: httprequest.handler

plugins:
  - serverless-python-requirements

custom:
  pythonRequirements:
    dockerizePip: true

Run Code Online (Sandbox Code Playgroud)

现在,如您所见,自定义部分告诉 serverless-python-requirements 插件在 Docker 容器中编译 Python 包。它应该安装requirements.txt 中的插件。这是requirements.txt的内容:

requests
Run Code Online (Sandbox Code Playgroud)

运行时sls deploy,这是控制台输出:

Serverless: Generated requirements from /Users/user/Desktop/ShoeSwiper/Serverless/requirements.txt in /Users/user/Desktop/ShoeSwiper/Serverless/.serverless/requirements.txt...
Serverless: Installing requirements from /Users/user/Library/Caches/serverless-python-requirements/007/requirements.txt ...
Serverless: Docker Image: lambci/lambda:build-python3.8
Serverless: …
Run Code Online (Sandbox Code Playgroud)

python docker serverless

4
推荐指数
1
解决办法
2123
查看次数

标签 统计

docker ×1

python ×1

serverless ×1