尝试使用以下命令将dockerized Lambda端口转发到我的本地主机:
$ sam local start-api --docker-network host
每次尝试访问 Lambda 时都会出错:
FunctionName 的调用容器没有响应
也尝试使用host.docker.internal和host.docker.local网络但没有成功。
有任何想法吗?解决方法?
尝试使用以下命令将dockerized Lambda端口转发到我的本地主机:
$ sam local start-api --docker-network host
每次尝试访问 Lambda 时都会出错:
FunctionName 的调用容器没有响应
也尝试使用host.docker.internal和host.docker.local网络但没有成功。
有任何想法吗?解决方法?
这似乎不起作用,但使用主机的 IP 地址确实......
假设您的主机的 IP 地址是 192.168.1.111 。你可以从你的 Lambda 中使用它来攻击你的主机
您可以使其可配置:
模板.yml:
...
Environment:
Variables:
ENDPOINT_URL: null
环境.json:
{
"Parameters":{
"ENDPOINT_URL":"http://192.168.1.111:5000"
}
}
lambda_function.py:
...
default_sns_endpoint = f'https://sns.{os.environ["AWS_REGION"]}.amazonaws.com'
endpoint_url = os.environ.get("ENDPOINT_URL", "") or default_endpoint
sns = boto3.client("sns", endpoint_url=endpoint_url)
...
启动 SAM:
sam local invoke --env-vars env.json