Dockerfile 将一个 Bun HTTP 服务器部署到 AWS Lambda。
1
创建新的 Dockerfile
在项目的根目录下创建一个新的 在项目的根目录下创建一个新的
Dockerfile。该文件包含初始化容器、将本地项目文件复制到其中、安装依赖和启动应用程序的指令。Dockerfile
确保启动命令与你的应用程序入口点对应。如果你的
package.json 中有 start 脚本,也可以是 CMD ["bun", "run", "start"]。如果你的应用没有依赖项,可以省略 RUN bun install --production --frozen-lockfile 这一行。.dockerignore 文件。它列出了要从容器镜像中_排除_的文件和目录,例如 node_modules,这有助于使构建更快、更小:.dockerignore
2
构建 Docker 镜像
确保你在包含
Dockerfile 的目录中,然后构建 Docker 镜像。本示例将镜像命名为 bun-lambda-demo 并标记为 latest。terminal
3
创建 ECR 仓库
在推送镜像之前,创建一个 ECR 仓库 用于推送。以下命令:
- 在
us-east-1区域创建一个名为bun-lambda-demo的 ECR 仓库 - 将仓库 URI 导出为环境变量。这是可选的,但可以使后续步骤更容易。
terminal
如果你使用 IAM Identity Center (SSO) 或已配置带有 profile 的 AWS CLI,请在 AWS CLI 命令中添加
--profile 标志。例如,如果你的 profile 名为 my-sso-app,请使用 --profile my-sso-app。运行 aws configure list-profiles 查看你可用的 profiles。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
