Dockerfile 将 Bun HTTP 服务器部署到 AWS Lambda。
1
创建一个新的 Dockerfile
确保您处于项目目录下,然后在项目根目录创建一个新的 在项目根目录创建一个新的
Dockerfile。此文件包含初始化容器、将本地项目文件复制到容器、安装依赖以及启动应用的指令。Dockerfile
确保启动命令对应您的应用入口点。如果您在
package.json 中有启动脚本,也可以使用 CMD ["bun", "run", "start"]。该镜像会在容器内使用 Bun 安装依赖并运行您的应用。如果您的应用没有依赖,可以省略 RUN bun install --production --frozen-lockfile 这行。.dockerignore 文件,里面列出应从容器镜像中 排除 的文件或目录,例如 node_modules。这样可以让构建更快且更小:.dockerignore
2
构建 Docker 镜像
确保您处于包含
Dockerfile 的目录,然后构建 Docker 镜像。本例中,我们将镜像命名为 bun-lambda-demo,并标记为 latest。terminal
3
创建 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
4
认证登录 ECR 仓库
登录到 ECR 仓库:
terminal
若使用 profile,需添加
--profile 参数:terminal
5
为 Docker 镜像打标签并推送到 ECR 仓库
确保您处于包含 接着,将镜像推送到 ECR 仓库。
Dockerfile 的目录下,然后对 Docker 镜像使用 ECR 仓库的 URI 打标签。terminal
terminal
6
创建 AWS Lambda 函数
7
选择容器映像
然后,前往 容器映像 URI 部分,点击 浏览映像。选择刚才推送到 ECR 仓库的映像。
接着选择 

latest 标签的映像,点击 选择映像。
8
配置函数
要获取函数的公共 URL,需要前往 附加配置 > 网络 > 函数 URL。将其设置为 启用,认证类型选择 NONE。

9
创建函数
点击页面底部的 创建函数,函数即被创建。

10
获取函数 URL
函数创建完成后,您会被重定向到函数页面,在 “函数 URL” 部分可以看到函数的 URL。

11
测试函数
🥳 您的应用已上线!要测试函数,您可以前往 测试 标签页,或直接调用函数 URL。
terminal
