Skip to main content
DigitalOcean 是一个云平台,提供一系列构建和部署应用程序的服务。 本指南使用 Dockerfile 将一个 Bun HTTP 服务器部署到 DigitalOcean。
在继续之前,请确保你已准备:

1

创建新的 DigitalOcean 容器仓库

创建一个新的容器仓库,用于存储 Docker 镜像。
在 DigitalOcean 仪表盘中,前往 容器仓库,并输入新仓库的详细信息。
DigitalOcean 仓库仪表盘
确保详细信息正确,然后点击 创建仓库
你应该可以在 DigitalOcean 仓库仪表盘 中看到新仓库:
DigitalOcean 仓库仪表盘
2

创建新的 Dockerfile

在项目的根目录下创建一个新的 Dockerfile。该文件包含初始化容器、将本地项目文件复制到其中、安装依赖和启动应用程序的指令。
Dockerfile
确保启动命令与你的应用程序入口点对应。如果你的 package.json 中有 start 脚本,也可以是 CMD ["bun", "run", "start"]如果你的应用没有依赖项,可以省略 RUN bun install --production --frozen-lockfile 这一行。
在项目的根目录下创建一个新的 .dockerignore 文件。它列出了要从容器镜像中_排除_的文件和目录,例如 node_modules,这有助于使构建更快、更小:
.dockerignore
3

将 Docker 与 DigitalOcean 仓库进行身份验证

在构建和推送 Docker 镜像之前,先将 Docker 与 DigitalOcean 容器仓库进行身份验证:
terminal
此命令使用你的 DigitalOcean 凭证将 Docker 与 DigitalOcean 的仓库进行身份验证。如果没有此步骤,构建和推送命令将失败并返回 401 认证错误。
4

构建 Docker 镜像并推送到 DigitalOcean 仓库

确保你在包含 Dockerfile 的目录中,然后通过一个命令构建 Docker 镜像并将其推送到 DigitalOcean 仓库:
terminal
如果你在 ARM Mac (M1/M2) 上构建,必须使用 docker buildx--platform=linux/amd64 以确保与 DigitalOcean 的基础设施兼容。如果使用 docker build 而不带平台标志,将创建一个 ARM64 镜像,该镜像无法在 DigitalOcean 上运行。
镜像推送完成后,你应该可以在 DigitalOcean 仓库仪表盘 中看到它:
DigitalOcean 仓库仪表盘
5

创建新的 DigitalOcean App Platform 项目

在 DigitalOcean 仪表盘中,前往 App Platform > 创建应用。你可以直接从容器镜像创建项目。
DigitalOcean App Platform 项目仪表盘
确保详细信息正确,然后点击 下一步
DigitalOcean App Platform 服务仪表盘
查看并配置资源设置,然后点击 创建应用
DigitalOcean App Platform 服务仪表盘
6

访问你的在线应用

你的应用现已上线。应用创建完成后,你应该可以在 App Platform 仪表盘中看到它及其公共 URL。
DigitalOcean App Platform 应用仪表盘