快速入门

按照本指南开始创建基本的 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 Dashboard 中是隐藏的。你可以在设置中更改此项,有关更多信息,请参阅如何显示扩展容器

第四步:提交并发布你的扩展到 Marketplace

如果你想让所有 Docker Desktop 用户都能使用你的扩展,你可以将其提交到 Marketplace 进行发布。有关更多信息,请参阅发布

清理

要移除扩展,请运行

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

下一步

页面选项