快速入门
请按照本指南开始创建基本的 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 中是隐藏的。您可以在设置中更改此设置,有关更多信息,请参阅如何显示扩展容器。
第四步:将您的扩展提交并发布到市场
如果您希望所有 Docker Desktop 用户都能使用您的扩展,您可以将其提交到 Marketplace 进行发布。有关更多信息,请参阅发布。
清理
要删除扩展,请运行
$ docker extension rm <name-of-your-extension>
接下来做什么
- 为您的扩展构建更高级的前端。
- 了解如何测试和调试您的扩展。
- 了解如何为您的扩展设置 CI。
- 了解有关扩展架构的更多信息。
- 了解有关设计 UI 的更多信息。