快速入门

按照本指南开始创建基本的 Docker 扩展。快速入门指南将自动为您生成样板文件。

前提条件

注意

NodeJS 和 Go 仅在您按照快速入门指南创建扩展时才需要。该指南使用 docker extension init 命令自动生成样板文件。此命令基于 ReactJS 和 Go 应用程序的模板。

在 Docker Desktop 设置中,请确保您能够安装正在开发的扩展。您可能需要进入 Docker Desktop 设置中的扩展选项卡,并取消选中仅允许通过 Docker Marketplace 分发的扩展

第一步:设置您的目录

使用 init 子命令并为您的扩展提供一个名称,以设置您的目录。

$ docker extension init <my-extension>

该命令会就您的扩展提出一系列问题,例如其名称、描述以及您的 Hub 仓库名称。这有助于 CLI 为您生成一套样板文件,以便您快速上手。样板文件将存储在 my-extension 目录中。

自动生成的扩展包含:

  • 一个位于 backend 文件夹中的 Go 后端服务,监听套接字端口。它有一个端点 /hello,返回 JSON 格式的数据负载。
  • 位于 frontend 文件夹中的 React 前端应用,可调用后端并输出后端的响应。

有关构建用户界面的更多信息和指南,请参阅 设计与界面样式指南

步骤二:构建扩展

要构建扩展,请进入新创建的目录并运行:

$ docker build -t <name-of-your-extension> .

docker build 构建扩展并生成一个与所选镜像仓库同名的镜像。例如,如果你在以下问题的回答中输入了 john/my-extension

? Hub repository (eg. namespace/repository on hub): john/my-extension`

docker build 会生成一个名为 john/my-extension 的镜像。

步骤三:安装并预览扩展

在 Docker Desktop 中安装扩展,请运行:

$ docker extension install <name-of-your-extension>

在 Docker Desktop 中预览扩展,安装完成后,您应在扩展菜单下看到一个快速入门项。选择该项将打开该扩展的前端界面。

提示

在 UI 开发过程中,使用热重载功能可以在不重新构建整个扩展的情况下测试您的更改。有关更多信息,请参阅 开发 UI 时预览

您可能还想检查属于该扩展的容器。默认情况下,扩展容器在 Docker 仪表板中是隐藏的。您可以在设置中更改此设置,更多信息请参见如何显示扩展容器

第四步:将您的扩展程序提交并发布到 Marketplace

如果您希望将自己的扩展程序提供给所有 Docker Desktop 用户使用,可以将其提交至应用商店进行发布。更多信息,请参阅 发布

清理

要移除扩展,请运行以下命令:

$ docker extension rm <name-of-your-extension>

接下来是什么