快速入门
按照本指南开始创建基本的 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>
下一步
- 为你的扩展构建一个更高级的前端。
- 了解如何测试和调试你的扩展。
- 了解如何为你的扩展设置 CI。
- 了解更多关于扩展架构的信息。
- 了解更多关于设计 UI 的信息。