Устанавливает минимальное расширение интерфейса

Чтобы приступить к созданию расширения, вам сначала понадобится каталог с файлами, которые варьируются от исходного кода расширения до необходимых файлов, специфичных для расширения. На этой странице представлена информация о том, как настроить минимальное расширение внешнего интерфейса на основе простого HTML.

Примечание

Прежде чем начать, убедиться, что у вас установлена последняя версия Docker Desktop.

Примечание

Если вы хотите создать кодовую базу для своего нового расширения, наши Оператор по началу работы и docker extension init <my-extension> обеспечат лучшую базу для вашего расширения, более актуальную и связанную с вашей установкой Docker Desktop.

Структура папки расширения

В minimal-frontend папка с образцами вы можете найти готовый пример, представляющий расширение пользовательского интерфейса, построенное на HTML. Мы рассмотрим данный пример кода в этом руководстве.

Хотя вы можете начать с пустого каталога, настоятельно рекомендуется начать с приведенного далее шаблона и изменяет его в соответствии с вашими потребностями.

.
├── Dockerfile # (1)
├── metadata.json # (2)
└── ui # (3)
    └── index.html
  1. Содержит все необходимое для создания расширения и его запуска в Docker Desktop.

  2. Файл, содержащий информацию о расширении, такую как имя, описание и версия.

  3. Исходная папка, содержащая все ваши файлы HTML, CSS и JS. Также могут быть другие статические ресурсы, такие как логотипы и значки. Дополнительные сведения и рекомендации по созданию пользовательского интерфейса см. в документе Раздел «Дизайн и стиль пользовательского интерфейса».

Если вы хотите настроить аутентификацию пользователя для расширения, см. Аутентификация.

Создать Dockerfile

Как минимум, ваш Dockerfile должен:

  • Метки, предоставляющие дополнительную информацию о расширении.

  • Исходный код, который в данном случае является index.html, находится в папке ui.

  • Файл metadata.json.

FROM scratch

LABEL org.opencontainers.image.title="MinimalFrontEnd" \
    org.opencontainers.image.description="A sample extension to show how easy it's to get started with Desktop Extensions." \
    org.opencontainers.image.vendor="Docker Inc." \
    com.docker.desktop.extension.api.version="1.0.0-beta.1" \
    com.docker.desktop.extension.icon="https://www.docker.com/wp-content/uploads/2022/03/Moby-logo.png"

COPY ui ./ui
COPY metadata.json .

Настраивает файл метаданных

Файл metadata.json требуется в корне файловой системы образа.

{
  "ui": {
    "dashboard-tab": {
      "title": "Min FrontEnd Extension",
      "root": "/ui",
      "src": "index.html"
    }
  }
}

Дополнительные сведения о metadata.json см. в статье Метаданные.

Что дальше?