Show HN: Run a Python Flask HTTP Server in AWS Lambda (w/Poetry)
github.comScaffoldly allows you to run any HTTP server inside AWS Lambda. It requires no code changes to your existing server and a simple configuration in the project's pyproject.toml. Deployments can be done locally or in GitHub Actions.
In this example, we're running a Flask server in AWS Lambda, and the scaffoldly toolchain handles packaging, deployment, and routing of AWS Lambda HTTP requests.
it uses the port 5000, can lambda open any port?
Yup! Change the `handler` and `start` command:
``` handler = "localhost:5000" ... start = "poetry run flask --app flask_poetry run -p 12345" ```
is this port publicly accessible? or the traffic is forwarded by lambda's interface?
It's not publicly accessible, per-se..., there's a reverse proxy I've written
1. There's a Function URL that then creates a Lambda HTTP Event
2. There's a reverse proxy in the container that converts the Lambda HTTP Event back into a HTTP Request
3. Then the HTTP Respose is transformed back into a Lambda HTTP Event Response
@billconan if you'd like, join my Discord and I'd be happy dive into details and/or provide more docs: https://scaffoldly.dev/community