Dockerfile 将 Bun HTTP 服务器部署到 AWS Lambda。
创建一个新的 Dockerfile
确保您处于项目目录下,然后在项目根目录创建一个新的 在项目根目录创建一个新的
Dockerfile。此文件包含初始化容器、将本地项目文件复制到容器、安装依赖以及启动应用的指令。Dockerfile
确保启动命令对应您的应用入口点。如果您在
package.json 中有启动脚本,也可以使用 CMD ["bun", "run", "start"]。该镜像会在容器内使用 Bun 安装依赖并运行您的应用。如果您的应用没有依赖,可以省略 RUN bun install --production --frozen-lockfile 这行。.dockerignore 文件,里面列出应从容器镜像中 排除 的文件或目录,例如 node_modules。这样可以让构建更快且更小:.dockerignore
构建 Docker 镜像
确保您处于包含
Dockerfile 的目录,然后构建 Docker 镜像。本例中,我们将镜像命名为 bun-lambda-demo,并标记为 latest。terminal
创建 ECR 仓库
要将镜像推送到 AWS Lambda,首先需要创建一个 ECR 仓库。运行以下命令将会:
- 在
us-east-1区域创建一个名为bun-lambda-demo的 ECR 仓库 - 获取仓库 URI,并将其导出为环境变量(可选,但便于接下来的步骤)
terminal
如果您使用 IAM Identity Center (SSO) 或为 AWS CLI 配置了多个 profile,需要为 AWS CLI 命令添加
--profile 参数。例如,若您的 profile 名为 my-sso-app,则使用 --profile my-sso-app。您可通过 aws configure list-profiles 查看可用的 profile。terminal
为 Docker 镜像打标签并推送到 ECR 仓库
确保您处于包含 接着,将镜像推送到 ECR 仓库。
Dockerfile 的目录下,然后对 Docker 镜像使用 ECR 仓库的 URI 打标签。terminal
terminal
创建 AWS Lambda 函数





