快速入门
按照本指南开始创建基本的 Docker 扩展。快速入门指南会自动为您生成样板文件。
先决条件
注意
仅当您按照快速入门指南创建扩展时,才需要 NodeJS 和 Go。它使用该命令自动生成样板文件。此命令使用基于 ReactJS 和 Go 应用程序的模板。
docker extension init
在 Docker Desktop 设置中,确保可以安装正在开发的扩展。您可能需要导航到 Docker Desktop 设置中的 Extensions 选项卡,然后取消选择 Allow only extensions distributed through the Docker Marketplace (仅允许通过 Docker Marketplace 分发的扩展)。
第 1 步:设置目录
要设置目录,请使用子命令并提供扩展的名称。init
$ docker extension init <my-extension>
该命令会询问一系列有关扩展的问题,例如其名称、描述和 Hub 存储库的名称。这有助于 CLI 生成一组样板文件供您开始使用。它将样板文件存储在目录中。my-extension
自动生成的扩展包含:
- 文件夹中侦听套接字的 Go 后端服务。它有一个返回 JSON 负载的终端节点。
backend
/hello
- 文件夹中的 React 前端,可以调用后端并输出后端的响应。
frontend
有关构建 UI 的更多信息和指南,请参阅设计和 UI 样式部分。
第 2 步:构建扩展
要构建扩展,请移动到新创建的目录中并运行:
$ 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
第 3 步:安装并预览扩展
要在 Docker Desktop 中安装扩展,请运行:
$ docker extension install <name-of-your-extension>
要在 Docker Desktop 中预览扩展,安装完成后,您应该 请参阅 Extensions (扩展) 菜单下的 Quickstart (快速入门) 项。选择此项将打开扩展的前端。
提示
在 UI 开发过程中,使用热重载来测试更改会很有帮助,而无需重新构建整个 外延。有关更多信息,请参阅开发 UI 时预览。
您可能还需要检查属于该扩展的容器。默认情况下,扩展容器为 从 Docker 仪表板中隐藏。您可以在 Settings 中更改此设置,请参阅 how to show extension containers 了解更多信息。
第 4 步:提交扩展并将其发布到 Marketplace
如果要使扩展可供所有 Docker Desktop 用户使用,可以提交该扩展以在 Marketplace 中发布。有关更多信息,请参阅发布。
收拾
要删除扩展,请运行:
$ docker extension rm <name-of-your-extension>