快速入门

按照本指南开始创建基本的 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 前端,它可以调用后端并输出后端的响应。

有关构建 UI 的更多信息和指南,请参阅 设计和 UI 样式部分

步骤二:构建扩展

要构建扩展,请移动到新创建的目录并运行

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

docker build 会构建扩展并生成一个与所选 Hub 代码库同名的镜像。例如,如果您将 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 用户可以使用您的扩展,您可以将其提交到 Marketplace 以供发布。有关更多信息,请参阅 发布

清理

要删除扩展,请运行

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

下一步