Overview

Use the resources in this section to create your own Docker Extension.

Beta

The Docker Extensions SDK is currently in Beta. Features and APIs detailed below are subject to change.

Extensions are packaged as specially formatted Docker images, which our CLI tool helps to build. At the root of the image filesystem is a metadata.json file which describes the content of the extension. It is a fundamental element of a Docker extension.

An extension can contain a UI part and backend parts that run either on the host or in the Desktop virtual machine. For further details, see Extension metadata.

Extensions are distributed through the Docker Hub. Development of extensions can be done locally without the need to push the extension to Docker Hub. See Extensions distribution for further details.

Process

The build and publish process

Understand the process for building and publishing an extension.

Quickstart

Quickstart guide

Follow the quickstart guide to build a basic Docker Extension quickly.

Design quidelines

View the design guidelines

Ensure your extension aligns to Docker's design guidelines and principles

Publish

Publish your extension

Understand how to publish your extension to the Marketplace.

Kubernetes

Interacting with Kubernetes

Find information on how to interact indirectly with a Kubernetes cluster from your Docker extension.

Multi-arch

Multi-arch extensions

Build your extension for multiple architectures.