ENGDOCS-2179 (#20591)
* ENGDOCS-2179 * link fix * more link fix * final link fix
|
|
@ -11,21 +11,21 @@
|
||||||
|
|
||||||
/content/desktop/ @aevesdocker
|
/content/desktop/ @aevesdocker
|
||||||
|
|
||||||
/content/desktop/extensions/ @aevesdocker
|
/content/extensions/ @aevesdocker
|
||||||
|
|
||||||
/content/desktop/extensions-sdk/ @aevesdocker
|
/content/extensions-sdk/ @aevesdocker
|
||||||
|
|
||||||
/content/scout/ @dvdksn
|
/content/scout/ @dvdksn
|
||||||
|
|
||||||
/content/docker-hub/ @aevesdocker @craig-osterhout @stephaurelio
|
/content/docker-hub/ @aevesdocker @craig-osterhout
|
||||||
|
|
||||||
/content/engine/ @dvdksn
|
/content/engine/ @dvdksn
|
||||||
|
|
||||||
/content/subscription/ @aevesdocker @stephaurelio
|
/content/subscription/ @aevesdocker
|
||||||
|
|
||||||
/content/docker-hub/publish/ @aevesdocker
|
/content/docker-hub/publish/ @craig-osterhout
|
||||||
|
|
||||||
/content/docker-hub/official_images/ @aevesdocker
|
/content/docker-hub/official_images/ @craig-osterhout
|
||||||
|
|
||||||
/content/registry/ @dvdksn
|
/content/registry/ @dvdksn
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -111,8 +111,8 @@ area/configuration:
|
||||||
area/extensions:
|
area/extensions:
|
||||||
- changed-files:
|
- changed-files:
|
||||||
- any-glob-to-any-file:
|
- any-glob-to-any-file:
|
||||||
- content/desktop/extensions/**
|
- content/extensions/**
|
||||||
- content/desktop/extensions-sdk/**
|
- content/extensions/extensions-sdk/**
|
||||||
|
|
||||||
area/samples:
|
area/samples:
|
||||||
- changed-files:
|
- changed-files:
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,7 @@ Docker Desktop reduces the time spent on complex setups so you can focus on writ
|
||||||
- Docker CLI client
|
- Docker CLI client
|
||||||
- [Docker Scout](../scout/_index.md) (additional subscription may apply)
|
- [Docker Scout](../scout/_index.md) (additional subscription may apply)
|
||||||
- [Docker Build](../build/_index.md)
|
- [Docker Build](../build/_index.md)
|
||||||
- [Docker Extensions](./extensions/_index.md)
|
- [Docker Extensions](../extensions/_index.md)
|
||||||
- [Docker Compose](../compose/_index.md)
|
- [Docker Compose](../compose/_index.md)
|
||||||
- [Docker Content Trust](../engine/security/trust/_index.md)
|
- [Docker Content Trust](../engine/security/trust/_index.md)
|
||||||
- [Kubernetes](https://github.com/kubernetes/kubernetes/)
|
- [Kubernetes](https://github.com/kubernetes/kubernetes/)
|
||||||
|
|
|
||||||
|
|
@ -257,7 +257,7 @@ Use the **Extensions** tab to:
|
||||||
- **Allow only extensions distributed through the Docker Marketplace**
|
- **Allow only extensions distributed through the Docker Marketplace**
|
||||||
- **Show Docker Extensions system containers**
|
- **Show Docker Extensions system containers**
|
||||||
|
|
||||||
For more information about Docker extensions, see [Extensions](../extensions/index.md).
|
For more information about Docker extensions, see [Extensions](/extensions/index.md).
|
||||||
|
|
||||||
## Features in development
|
## Features in development
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -299,7 +299,7 @@ Use the **Extensions** tab to:
|
||||||
- **Allow only extensions distributed through the Docker Marketplace**
|
- **Allow only extensions distributed through the Docker Marketplace**
|
||||||
- **Show Docker Extensions system containers**
|
- **Show Docker Extensions system containers**
|
||||||
|
|
||||||
For more information about Docker extensions, see [Extensions](../extensions/index.md).
|
For more information about Docker extensions, see [Extensions](/extensions/index.md).
|
||||||
|
|
||||||
## Features in development
|
## Features in development
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -346,7 +346,7 @@ Use the **Extensions** tab to:
|
||||||
- **Allow only extensions distributed through the Docker Marketplace**
|
- **Allow only extensions distributed through the Docker Marketplace**
|
||||||
- **Show Docker Extensions system containers**
|
- **Show Docker Extensions system containers**
|
||||||
|
|
||||||
For more information about Docker extensions, see [Extensions](../extensions/index.md).
|
For more information about Docker extensions, see [Extensions](/extensions/index.md).
|
||||||
|
|
||||||
## Features in development
|
## Features in development
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,13 +2,13 @@
|
||||||
description: Extensions
|
description: Extensions
|
||||||
keywords: Docker Extensions, Docker Desktop, Linux, Mac, Windows
|
keywords: Docker Extensions, Docker Desktop, Linux, Mac, Windows
|
||||||
title: Overview of Docker Extensions
|
title: Overview of Docker Extensions
|
||||||
toc_min: 1
|
aliases:
|
||||||
toc_max: 2
|
- /desktop/extensions/
|
||||||
---
|
---
|
||||||
|
|
||||||
Docker Extensions let you use third-party tools within Docker Desktop to extend its functionality.
|
Docker Extensions let you use third-party tools within Docker Desktop to extend its functionality.
|
||||||
|
|
||||||
You can seamlessly connect your favorite development tools to your application development and deployment workflows. Augment Docker Desktop with debugging, testing, security, and networking functionalities, and create custom add-ons using the Extensions [SDK](../extensions-sdk/index.md).
|
You can seamlessly connect your favorite development tools to your application development and deployment workflows. Augment Docker Desktop with debugging, testing, security, and networking functionalities, and create custom add-ons using the Extensions [SDK](extensions-sdk/index.md).
|
||||||
|
|
||||||
Anyone can use Docker Extensions and there is no limit to the number of extensions you can install.
|
Anyone can use Docker Extensions and there is no limit to the number of extensions you can install.
|
||||||
|
|
||||||
|
|
@ -3,32 +3,33 @@ title: Overview of the Extensions SDK
|
||||||
description: Overall index for Docker Extensions SDK documentation
|
description: Overall index for Docker Extensions SDK documentation
|
||||||
keywords: Docker, Extensions, sdk
|
keywords: Docker, Extensions, sdk
|
||||||
aliases:
|
aliases:
|
||||||
- /desktop/extensions-sdk/dev/overview/
|
- /desktop/extensions-sdk/dev/overview/
|
||||||
|
- /desktop/extensions-sdk/
|
||||||
grid:
|
grid:
|
||||||
- title: "The build and publish process"
|
- title: "The build and publish process"
|
||||||
description: Understand the process for building and publishing an extension.
|
description: Understand the process for building and publishing an extension.
|
||||||
icon: "checklist"
|
icon: "checklist"
|
||||||
link: "/desktop/extensions-sdk/process/"
|
link: "/extensions/extensions-sdk/process/"
|
||||||
- title: "Quickstart guide"
|
- title: "Quickstart guide"
|
||||||
description: Follow the quickstart guide to create a basic Docker extension quickly.
|
description: Follow the quickstart guide to create a basic Docker extension quickly.
|
||||||
icon: "explore"
|
icon: "explore"
|
||||||
link: "/desktop/extensions-sdk/quickstart/"
|
link: "/extensions/extensions-sdk/quickstart/"
|
||||||
- title: "View the design guidelines"
|
- title: "View the design guidelines"
|
||||||
description: Ensure your extension aligns to Docker's design guidelines and principles.
|
description: Ensure your extension aligns to Docker's design guidelines and principles.
|
||||||
icon: "design_services"
|
icon: "design_services"
|
||||||
link: "/desktop/extensions-sdk/design/design-guidelines/"
|
link: "/extensions/extensions-sdk/design/design-guidelines/"
|
||||||
- title: "Publish your extension"
|
- title: "Publish your extension"
|
||||||
description: Understand how to publish your extension to the Marketplace.
|
description: Understand how to publish your extension to the Marketplace.
|
||||||
icon: "publish"
|
icon: "publish"
|
||||||
link: "/desktop/extensions-sdk/extensions/"
|
link: "/extensions/extensions-sdk/extensions/"
|
||||||
- title: "Interacting with Kubernetes"
|
- title: "Interacting with Kubernetes"
|
||||||
description: Find information on how to interact indirectly with a Kubernetes cluster from your Docker extension.
|
description: Find information on how to interact indirectly with a Kubernetes cluster from your Docker extension.
|
||||||
icon: "multiple_stop"
|
icon: "multiple_stop"
|
||||||
link: "/desktop/extensions-sdk/dev/kubernetes/"
|
link: "/extensions/extensions-sdk/guides/kubernetes/"
|
||||||
- title: "Multi-arch extensions"
|
- title: "Multi-arch extensions"
|
||||||
description: Build your extension for multiple architectures.
|
description: Build your extension for multiple architectures.
|
||||||
icon: "content_copy"
|
icon: "content_copy"
|
||||||
link: "/desktop/extensions-sdk/extensions/multi-arch/"
|
link: "/extensions/extensions-sdk/extensions/multi-arch/"
|
||||||
---
|
---
|
||||||
|
|
||||||
The resources in this section help you create your own Docker extension.
|
The resources in this section help you create your own Docker extension.
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Extension architecture
|
title: Extension architecture
|
||||||
description: Docker extension architecture
|
description: Docker extension architecture
|
||||||
keywords: Docker, extensions, sdk, metadata
|
keywords: Docker, extensions, sdk, metadata
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/architecture/
|
||||||
---
|
---
|
||||||
|
|
||||||
Extensions are applications that run inside the Docker Desktop. They're packaged as Docker images, distributed
|
Extensions are applications that run inside the Docker Desktop. They're packaged as Docker images, distributed
|
||||||
|
|
@ -13,11 +15,11 @@ Extensions can be composed of three (optional) components:
|
||||||
- A backend: One or many containerised services running in the Docker Desktop VM
|
- A backend: One or many containerised services running in the Docker Desktop VM
|
||||||
- Executables: Shell scripts or binaries that Docker Desktop copies on the host when installing the extension
|
- Executables: Shell scripts or binaries that Docker Desktop copies on the host when installing the extension
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
An extension doesn't necessarily need to have all these components, but at least one of them depending on the extension features.
|
An extension doesn't necessarily need to have all these components, but at least one of them depending on the extension features.
|
||||||
To configure and run those components, Docker Desktop uses a `metadata.json` file. See the
|
To configure and run those components, Docker Desktop uses a `metadata.json` file. See the
|
||||||
[metadata](./metadata) section for more details.
|
[metadata](metadata) section for more details.
|
||||||
|
|
||||||
## The frontend
|
## The frontend
|
||||||
|
|
||||||
|
|
@ -25,7 +27,7 @@ The frontend is basically a web application made from HTML, Javascript, and CSS.
|
||||||
file, some vanilla Javascript or any frontend framework, such as React or Vue.js.
|
file, some vanilla Javascript or any frontend framework, such as React or Vue.js.
|
||||||
|
|
||||||
When Docker Desktop installs the extension, it extracts the UI folder from the extension image, as defined by the
|
When Docker Desktop installs the extension, it extracts the UI folder from the extension image, as defined by the
|
||||||
`ui` section in the `metadata.json`. See the [ui metadata section](./metadata.md#ui-section) for more details.
|
`ui` section in the `metadata.json`. See the [ui metadata section](metadata.md#ui-section) for more details.
|
||||||
|
|
||||||
Every time users click on the **Extensions** tab, Docker Desktop initializes the extension's UI as if it was the first time. When they navigate away from the tab, both the UI itself and all the sub-processes started by it (if any) are terminated.
|
Every time users click on the **Extensions** tab, Docker Desktop initializes the extension's UI as if it was the first time. When they navigate away from the tab, both the UI itself and all the sub-processes started by it (if any) are terminated.
|
||||||
|
|
||||||
|
|
@ -60,7 +62,7 @@ file
|
||||||
|
|
||||||
Usually, the backend is made of one container that runs within the Docker Desktop VM. Internally, Docker Desktop creates
|
Usually, the backend is made of one container that runs within the Docker Desktop VM. Internally, Docker Desktop creates
|
||||||
a Docker Compose project, creates the container from the `image` option of the `vm` section of the `metadata.json`, and
|
a Docker Compose project, creates the container from the `image` option of the `vm` section of the `metadata.json`, and
|
||||||
attaches it to the Compose project. See the [ui metadata section](./metadata.md#vm-section) for more details.
|
attaches it to the Compose project. See the [ui metadata section](metadata.md#vm-section) for more details.
|
||||||
|
|
||||||
In some cases, a `compose.yml` file can be used instead of an `image`. This is useful when the backend container
|
In some cases, a `compose.yml` file can be used instead of an `image`. This is useful when the backend container
|
||||||
needs more specific options, such as mounting volumes or requesting [capabilities](https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities)
|
needs more specific options, such as mounting volumes or requesting [capabilities](https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities)
|
||||||
|
|
@ -79,7 +81,7 @@ or named pipe, depending on the operating system. If the backend was listening t
|
||||||
prevent collision with other applications running on the host or in a container already. Also, some users are
|
prevent collision with other applications running on the host or in a container already. Also, some users are
|
||||||
running Docker Desktop in constrained environments where they can't open ports on their machines.
|
running Docker Desktop in constrained environments where they can't open ports on their machines.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
Finally, the backend can be built with any technology, as long as it can run in a container and listen on a socket.
|
Finally, the backend can be built with any technology, as long as it can run in a container and listen on a socket.
|
||||||
|
|
||||||
|
|
@ -95,15 +97,15 @@ Shipping those executables with the extension ensure that the CLI tool is always
|
||||||
the users' machine.
|
the users' machine.
|
||||||
|
|
||||||
When Docker Desktop installs the extension, it copies the executables on the host as defined by the `host` section in
|
When Docker Desktop installs the extension, it copies the executables on the host as defined by the `host` section in
|
||||||
the `metadata.json`. See the [ui metadata section](./metadata.md#host-section) for more details.
|
the `metadata.json`. See the [ui metadata section](metadata.md#host-section) for more details.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
However, since they're executed on the users' machine, they have to be available to the platform they're running on.
|
However, since they're executed on the users' machine, they have to be available to the platform they're running on.
|
||||||
For example, if you want to ship the `kubectl` executable, you need to provide a different version for Windows, Mac,
|
For example, if you want to ship the `kubectl` executable, you need to provide a different version for Windows, Mac,
|
||||||
and Linux. Multi arch images will also need to include binaries built for the right arch (AMD / ARM)
|
and Linux. Multi arch images will also need to include binaries built for the right arch (AMD / ARM)
|
||||||
|
|
||||||
|
|
||||||
See the [host metadata section](./metadata.md#host-section) for more details.
|
See the [host metadata section](metadata.md#host-section) for more details.
|
||||||
|
|
||||||
Learn how to [invoke host binaries](../guides/invoke-host-binaries.md).
|
Learn how to [invoke host binaries](../guides/invoke-host-binaries.md).
|
||||||
|
Before Width: | Height: | Size: 74 KiB After Width: | Height: | Size: 74 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 104 KiB After Width: | Height: | Size: 104 KiB |
|
|
@ -3,7 +3,8 @@ title: Extension metadata
|
||||||
description: Docker extension metadata
|
description: Docker extension metadata
|
||||||
keywords: Docker, extensions, sdk, metadata
|
keywords: Docker, extensions, sdk, metadata
|
||||||
aliases:
|
aliases:
|
||||||
- /desktop/extensions-sdk/extensions/METADATA
|
- /desktop/extensions-sdk/extensions/METADATA
|
||||||
|
- /desktop/extensions-sdk/architecture/metadata/
|
||||||
---
|
---
|
||||||
|
|
||||||
## The metadata.json file
|
## The metadata.json file
|
||||||
|
|
@ -3,7 +3,8 @@ title: Extension security
|
||||||
description: Aspects of the security model of extensions
|
description: Aspects of the security model of extensions
|
||||||
keywords: Docker, extensions, sdk, security
|
keywords: Docker, extensions, sdk, security
|
||||||
aliases:
|
aliases:
|
||||||
- /desktop/extensions-sdk/guides/security/
|
- /desktop/extensions-sdk/guides/security/
|
||||||
|
- /desktop/extensions-sdk/architecture/security/
|
||||||
---
|
---
|
||||||
|
|
||||||
## Extension capabilities
|
## Extension capabilities
|
||||||
|
|
@ -3,9 +3,10 @@ title: Add a backend to your extension
|
||||||
description: Learn how to add a backend to your extension.
|
description: Learn how to add a backend to your extension.
|
||||||
keywords: Docker, extensions, sdk, build
|
keywords: Docker, extensions, sdk, build
|
||||||
aliases:
|
aliases:
|
||||||
- /desktop/extensions-sdk/tutorials/minimal-backend-extension/
|
- /desktop/extensions-sdk/tutorials/minimal-backend-extension/
|
||||||
- /desktop/extensions-sdk/build/minimal-backend-extension/
|
- /desktop/extensions-sdk/build/minimal-backend-extension/
|
||||||
- /desktop/extensions-sdk/build/set-up/backend-extension-tutorial/
|
- /desktop/extensions-sdk/build/set-up/backend-extension-tutorial/
|
||||||
|
- /desktop/extensions-sdk/build/backend-extension-tutorial/
|
||||||
---
|
---
|
||||||
|
|
||||||
Your extension can ship a backend part with which the frontend can interact with. This page provides information on why and how to add a backend.
|
Your extension can ship a backend part with which the frontend can interact with. This page provides information on why and how to add a backend.
|
||||||
|
|
@ -20,7 +21,7 @@ Before you start, make sure you have installed the latest version of [Docker Des
|
||||||
## Why add a backend?
|
## Why add a backend?
|
||||||
|
|
||||||
Thanks to the Docker Extensions SDK, most of the time you should be able to do what you need from the Docker CLI
|
Thanks to the Docker Extensions SDK, most of the time you should be able to do what you need from the Docker CLI
|
||||||
directly from [the frontend](./frontend-extension-tutorial.md#use-the-extension-apis-client).
|
directly from [the frontend](frontend-extension-tutorial.md#use-the-extension-apis-client).
|
||||||
|
|
||||||
Nonetheless, there are some cases where you might need to add a backend to your extension. So far, extension
|
Nonetheless, there are some cases where you might need to add a backend to your extension. So far, extension
|
||||||
builders have used the backend to:
|
builders have used the backend to:
|
||||||
|
|
@ -278,7 +279,7 @@ For more information on the `vm` section of the `metadata.json`, see [Metadata](
|
||||||
|
|
||||||
## Invoke the extension backend from your frontend
|
## Invoke the extension backend from your frontend
|
||||||
|
|
||||||
Using the [advanced frontend extension example](./frontend-extension-tutorial.md), we can invoke our extension backend.
|
Using the [advanced frontend extension example](frontend-extension-tutorial.md), we can invoke our extension backend.
|
||||||
|
|
||||||
Use the Docker Desktop Client object and then invoke the `/hello` route from the backend service with `ddClient.
|
Use the Docker Desktop Client object and then invoke the `/hello` route from the backend service with `ddClient.
|
||||||
extension.vm.service.get` that returns the body of the response.
|
extension.vm.service.get` that returns the body of the response.
|
||||||
|
|
@ -3,15 +3,16 @@ title: Create an advanced frontend extension
|
||||||
description: Advanced frontend extension tutorial
|
description: Advanced frontend extension tutorial
|
||||||
keywords: Docker, extensions, sdk, build
|
keywords: Docker, extensions, sdk, build
|
||||||
aliases:
|
aliases:
|
||||||
- /desktop/extensions-sdk/tutorials/react-extension/
|
- /desktop/extensions-sdk/tutorials/react-extension/
|
||||||
- /desktop/extensions-sdk/build/set-up/react-extension/
|
- /desktop/extensions-sdk/build/set-up/react-extension/
|
||||||
- /desktop/extensions-sdk/build/set-up/minimal-frontend-using-docker-cli/
|
- /desktop/extensions-sdk/build/set-up/minimal-frontend-using-docker-cli/
|
||||||
- /desktop/extensions-sdk/build/set-up/frontend-extension-tutorial/
|
- /desktop/extensions-sdk/build/set-up/frontend-extension-tutorial/
|
||||||
|
- /desktop/extensions-sdk/build/frontend-extension-tutorial/
|
||||||
---
|
---
|
||||||
|
|
||||||
To start creating your extension, you first need a directory with files which range from the extension’s source code to the required extension-specific files. This page provides information on how to set up an extension with a more advanced frontend.
|
To start creating your extension, you first need a directory with files which range from the extension’s source code to the required extension-specific files. This page provides information on how to set up an extension with a more advanced frontend.
|
||||||
|
|
||||||
Before you start, make sure you have installed the latest version of [Docker Desktop](../../release-notes.md).
|
Before you start, make sure you have installed the latest version of [Docker Desktop](/desktop/release-notes.md).
|
||||||
|
|
||||||
## Extension folder structure
|
## Extension folder structure
|
||||||
|
|
||||||
|
|
@ -356,7 +357,7 @@ when you need to debug it.
|
||||||
|
|
||||||
## What's next?
|
## What's next?
|
||||||
|
|
||||||
- Add a [backend](./backend-extension-tutorial.md) to your extension.
|
- Add a [backend](backend-extension-tutorial.md) to your extension.
|
||||||
- Learn how to [test and debug](../dev/test-debug.md) your extension.
|
- Learn how to [test and debug](../dev/test-debug.md) your extension.
|
||||||
- Learn how to [setup CI for your extension](../dev/continuous-integration.md).
|
- Learn how to [setup CI for your extension](../dev/continuous-integration.md).
|
||||||
- Learn more about extensions [architecture](../architecture/index.md).
|
- Learn more about extensions [architecture](../architecture/index.md).
|
||||||
|
Before Width: | Height: | Size: 749 KiB After Width: | Height: | Size: 749 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 538 KiB After Width: | Height: | Size: 538 KiB |
|
|
@ -3,13 +3,14 @@ title: Create a simple extension
|
||||||
description: Minimal frontend extension tutorial
|
description: Minimal frontend extension tutorial
|
||||||
keywords: Docker, extensions, sdk, build
|
keywords: Docker, extensions, sdk, build
|
||||||
aliases:
|
aliases:
|
||||||
- /desktop/extensions-sdk/tutorials/minimal-frontend-extension/
|
- /desktop/extensions-sdk/tutorials/minimal-frontend-extension/
|
||||||
- /desktop/extensions-sdk/build/set-up/minimal-frontend-extension/
|
- /desktop/extensions-sdk/build/set-up/minimal-frontend-extension/
|
||||||
|
- /desktop/extensions-sdk/build/minimal-frontend-extension/
|
||||||
---
|
---
|
||||||
|
|
||||||
To start creating your extension, you first need a directory with files which range from the extension’s source code to the required extension-specific files. This page provides information on how to set up a minimal frontend extension based on plain HTML.
|
To start creating your extension, you first need a directory with files which range from the extension’s source code to the required extension-specific files. This page provides information on how to set up a minimal frontend extension based on plain HTML.
|
||||||
|
|
||||||
Before you start, make sure you have installed the latest version of [Docker Desktop](../../release-notes.md).
|
Before you start, make sure you have installed the latest version of [Docker Desktop](/desktop/release-notes.md).
|
||||||
|
|
||||||
> Tip
|
> Tip
|
||||||
>
|
>
|
||||||
|
|
@ -102,7 +103,7 @@ The left-hand menu displays a new tab with the name of your extension.
|
||||||
|
|
||||||
## What's next?
|
## What's next?
|
||||||
|
|
||||||
- Build a more [advanced frontend](./frontend-extension-tutorial.md) extension.
|
- Build a more [advanced frontend](frontend-extension-tutorial.md) extension.
|
||||||
- Learn how to [test and debug](../dev/test-debug.md) your extension.
|
- Learn how to [test and debug](../dev/test-debug.md) your extension.
|
||||||
- Learn how to [setup CI for your extension](../dev/continuous-integration.md).
|
- Learn how to [setup CI for your extension](../dev/continuous-integration.md).
|
||||||
- Learn more about extensions [architecture](../architecture/index.md).
|
- Learn more about extensions [architecture](../architecture/index.md).
|
||||||
|
|
@ -3,8 +3,9 @@ title: UI styling overview for Docker extensions
|
||||||
description: Docker extension design
|
description: Docker extension design
|
||||||
keywords: Docker, extensions, design
|
keywords: Docker, extensions, design
|
||||||
aliases:
|
aliases:
|
||||||
- /desktop/extensions-sdk/design/design-overview/
|
- /desktop/extensions-sdk/design/design-overview/
|
||||||
- /desktop/extensions-sdk/design/overview/
|
- /desktop/extensions-sdk/design/overview/
|
||||||
|
- /desktop/extensions-sdk/design/
|
||||||
---
|
---
|
||||||
|
|
||||||
Our Design System is a constantly evolving set of specifications that aim to ensure visual consistency across Docker products, and meet [level AA accessibility standards](https://www.w3.org/WAI/WCAG2AA-Conformance). We've opened parts of it to extension authors, documenting basic styles (color, typography) and components. See: [Docker Extensions Styleguide](https://www.figma.com/file/U7pLWfEf6IQKUHLhdateBI/Docker-Design-Guidelines?node-id=1%3A28771).
|
Our Design System is a constantly evolving set of specifications that aim to ensure visual consistency across Docker products, and meet [level AA accessibility standards](https://www.w3.org/WAI/WCAG2AA-Conformance). We've opened parts of it to extension authors, documenting basic styles (color, typography) and components. See: [Docker Extensions Styleguide](https://www.figma.com/file/U7pLWfEf6IQKUHLhdateBI/Docker-Design-Guidelines?node-id=1%3A28771).
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Design guidelines for Docker extensions
|
title: Design guidelines for Docker extensions
|
||||||
description: Docker extension design
|
description: Docker extension design
|
||||||
keywords: Docker, extensions, design
|
keywords: Docker, extensions, design
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/design/design-guidelines/
|
||||||
---
|
---
|
||||||
|
|
||||||
At Docker, we aim to build tools that integrate into a user's existing workflows rather than requiring them to adopt new ones. We strongly recommend that you follow these guidelines when creating extensions. We review and approve your Marketplace publication based on these requirements.
|
At Docker, we aim to build tools that integrate into a user's existing workflows rather than requiring them to adopt new ones. We strongly recommend that you follow these guidelines when creating extensions. We review and approve your Marketplace publication based on these requirements.
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Docker design principles
|
title: Docker design principles
|
||||||
description: Docker extension design
|
description: Docker extension design
|
||||||
keywords: Docker, extensions, design
|
keywords: Docker, extensions, design
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/design/design-principles/
|
||||||
---
|
---
|
||||||
|
|
||||||
## Provide actionable guidance
|
## Provide actionable guidance
|
||||||
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 46 KiB |
|
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 68 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 37 KiB |
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
|
|
@ -2,6 +2,8 @@
|
||||||
title: MUI best practices
|
title: MUI best practices
|
||||||
description: Guidelines for using MUI to maximise compatibility with Docker Desktop
|
description: Guidelines for using MUI to maximise compatibility with Docker Desktop
|
||||||
keywords: Docker, extensions, mui, theme, theming, material-ui, material
|
keywords: Docker, extensions, mui, theme, theming, material-ui, material
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/design/mui-best-practices/
|
||||||
---
|
---
|
||||||
|
|
||||||
This article assumes you're following our recommended practice by using our [Material UI theme](https://www.npmjs.com/package/@docker/docker-mui-theme).
|
This article assumes you're following our recommended practice by using our [Material UI theme](https://www.npmjs.com/package/@docker/docker-mui-theme).
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Extension Backend
|
title: Extension Backend
|
||||||
description: Docker extension API
|
description: Docker extension API
|
||||||
keywords: Docker, extensions, sdk, API
|
keywords: Docker, extensions, sdk, API
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/backend/
|
||||||
---
|
---
|
||||||
|
|
||||||
The `ddClient.extension.vm` object can be used to communicate with the backend defined in the [vm section](../../architecture/metadata.md#vm-section) of the extension metadata.
|
The `ddClient.extension.vm` object can be used to communicate with the backend defined in the [vm section](../../architecture/metadata.md#vm-section) of the extension metadata.
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Navigation
|
title: Navigation
|
||||||
description: Docker extension API
|
description: Docker extension API
|
||||||
keywords: Docker, extensions, sdk, API
|
keywords: Docker, extensions, sdk, API
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/dashboard-routes-navigation/
|
||||||
---
|
---
|
||||||
|
|
||||||
`ddClient.desktopUI.navigate` enables navigation to specific screens of Docker Desktop such as the containers tab, the images tab, or a specific container's logs.
|
`ddClient.desktopUI.navigate` enables navigation to specific screens of Docker Desktop such as the containers tab, the images tab, or a specific container's logs.
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Dashboard
|
title: Dashboard
|
||||||
description: Docker extension API
|
description: Docker extension API
|
||||||
keywords: Docker, extensions, sdk, API
|
keywords: Docker, extensions, sdk, API
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/dashboard/
|
||||||
---
|
---
|
||||||
|
|
||||||
## User notifications
|
## User notifications
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Docker
|
title: Docker
|
||||||
description: Docker extension API
|
description: Docker extension API
|
||||||
keywords: Docker, extensions, sdk, API
|
keywords: Docker, extensions, sdk, API
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/docker/
|
||||||
---
|
---
|
||||||
|
|
||||||
## Docker objects
|
## Docker objects
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Extension UI API
|
title: Extension UI API
|
||||||
description: Docker extension development overview
|
description: Docker extension development overview
|
||||||
keywords: Docker, extensions, sdk, development
|
keywords: Docker, extensions, sdk, development
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/overview/
|
||||||
---
|
---
|
||||||
|
|
||||||
The extensions UI runs in a sandboxed environment and doesn't have access to any
|
The extensions UI runs in a sandboxed environment and doesn't have access to any
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/README/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Extensions API Reference
|
# Extensions API Reference
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/BackendV0/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: BackendV0
|
# Interface: BackendV0
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/DesktopUI/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: DesktopUI
|
# Interface: DesktopUI
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/Dialog/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: Dialog
|
# Interface: Dialog
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/Docker/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: Docker
|
# Interface: Docker
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/DockerCommand/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: DockerCommand
|
# Interface: DockerCommand
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/DockerDesktopClient/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: DockerDesktopClient
|
# Interface: DockerDesktopClient
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/Exec/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: Exec
|
# Interface: Exec
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/ExecOptions/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: ExecOptions
|
# Interface: ExecOptions
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/ExecProcess/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: ExecProcess
|
# Interface: ExecProcess
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/ExecResult/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: ExecResult
|
# Interface: ExecResult
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/ExecResultV0/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: ExecResultV0
|
# Interface: ExecResultV0
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/ExecStreamOptions/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: ExecStreamOptions
|
# Interface: ExecStreamOptions
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/Extension/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: Extension
|
# Interface: Extension
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/ExtensionCli/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: ExtensionCli
|
# Interface: ExtensionCli
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/ExtensionHost/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: ExtensionHost
|
# Interface: ExtensionHost
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/ExtensionVM/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: ExtensionVM
|
# Interface: ExtensionVM
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/Host/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: Host
|
# Interface: Host
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/HttpService/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: HttpService
|
# Interface: HttpService
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/NavigationIntents/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: NavigationIntents
|
# Interface: NavigationIntents
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/OpenDialogResult/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: OpenDialogResult
|
# Interface: OpenDialogResult
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/RawExecResult/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: RawExecResult
|
# Interface: RawExecResult
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/RequestConfig/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: RequestConfig
|
# Interface: RequestConfig
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/RequestConfigV0/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: RequestConfigV0
|
# Interface: RequestConfigV0
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/ServiceError/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: ServiceError
|
# Interface: ServiceError
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/SpawnOptions/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: SpawnOptions
|
# Interface: SpawnOptions
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
---
|
---
|
||||||
description: Docker extension API reference
|
description: Docker extension API reference
|
||||||
keywords: Docker, extensions, sdk, API, reference
|
keywords: Docker, extensions, sdk, API, reference
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/api/reference/interfaces/Toast/
|
||||||
---
|
---
|
||||||
|
|
||||||
# Interface: Toast
|
# Interface: Toast
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Continuous Integration (CI)
|
title: Continuous Integration (CI)
|
||||||
description: Automatically test and validate your extension.
|
description: Automatically test and validate your extension.
|
||||||
keywords: Docker, Extensions, sdk, CI, test, regression
|
keywords: Docker, Extensions, sdk, CI, test, regression
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/dev/continuous-integration/
|
||||||
---
|
---
|
||||||
|
|
||||||
In order to help validate your extension and ensure it's functional, the Extension SDK provides tools to help you setup continuous integration for your extension.
|
In order to help validate your extension and ensure it's functional, the Extension SDK provides tools to help you setup continuous integration for your extension.
|
||||||
|
|
@ -3,7 +3,8 @@ title: Test and debug
|
||||||
description: Test and debug your extension.
|
description: Test and debug your extension.
|
||||||
keywords: Docker, Extensions, sdk, preview, update, Chrome DevTools
|
keywords: Docker, Extensions, sdk, preview, update, Chrome DevTools
|
||||||
aliases:
|
aliases:
|
||||||
- /desktop/extensions-sdk/build/test-debug/
|
- /desktop/extensions-sdk/build/test-debug/
|
||||||
|
- /desktop/extensions-sdk/dev/test-debug/
|
||||||
---
|
---
|
||||||
|
|
||||||
In order to improve the developer experience, Docker Desktop provides a set of tools to help you test and debug your extension.
|
In order to improve the developer experience, Docker Desktop provides a set of tools to help you test and debug your extension.
|
||||||
|
|
@ -74,4 +75,4 @@ $ docker extension rm <name-of-your-extension>
|
||||||
- Learn more about extensions [architecture](../architecture/index.md).
|
- Learn more about extensions [architecture](../architecture/index.md).
|
||||||
- Explore our [design principles](../design/design-principles.md).
|
- Explore our [design principles](../design/design-principles.md).
|
||||||
- Take a look at our [UI styling guidelines](../design/index.md).
|
- Take a look at our [UI styling guidelines](../design/index.md).
|
||||||
- Learn how to [setup CI for your extension](./continuous-integration.md).
|
- Learn how to [setup CI for your extension](continuous-integration.md).
|
||||||
|
|
@ -3,7 +3,8 @@ title: Usage overview
|
||||||
description: Docker extension CLI
|
description: Docker extension CLI
|
||||||
keywords: Docker, extensions, sdk, CLI
|
keywords: Docker, extensions, sdk, CLI
|
||||||
aliases:
|
aliases:
|
||||||
- /desktop/extensions-sdk/dev/cli/usage/
|
- /desktop/extensions-sdk/dev/cli/usage/
|
||||||
|
- /desktop/extensions-sdk/dev/usage/
|
||||||
---
|
---
|
||||||
|
|
||||||
The Extensions CLI is an extension development tool that is used to manage Docker extensions. Actions include install, list, remove, and validate extensions.
|
The Extensions CLI is an extension development tool that is used to manage Docker extensions. Actions include install, list, remove, and validate extensions.
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Package and release your extension
|
title: Package and release your extension
|
||||||
description: Docker extension disctribution
|
description: Docker extension disctribution
|
||||||
keywords: Docker, extensions, sdk, distribution
|
keywords: Docker, extensions, sdk, distribution
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/extensions/DISTRIBUTION/
|
||||||
---
|
---
|
||||||
|
|
||||||
This page contains additional information on how to package and distribute extensions.
|
This page contains additional information on how to package and distribute extensions.
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Extension release process
|
title: Extension release process
|
||||||
description: General steps in how to publish an extension
|
description: General steps in how to publish an extension
|
||||||
keywords: Docker, Extensions, sdk, publish
|
keywords: Docker, Extensions, sdk, publish
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/extensions/
|
||||||
---
|
---
|
||||||
|
|
||||||
This section describes how to make your extension available and more visible, so users can discover it and install it with a single click.
|
This section describes how to make your extension available and more visible, so users can discover it and install it with a single click.
|
||||||
|
|
@ -13,7 +15,7 @@ After you have developed your extension and tested it locally, you are ready to
|
||||||
Releasing your extension consists of:
|
Releasing your extension consists of:
|
||||||
|
|
||||||
- Providing information about your extension: description, screenshots, etc. so users can decide to install your extension
|
- Providing information about your extension: description, screenshots, etc. so users can decide to install your extension
|
||||||
- [Validating](./validate.md) that the extension is built in the right format and includes the required information
|
- [Validating](validate.md) that the extension is built in the right format and includes the required information
|
||||||
- Making the extension image available on [Docker Hub](https://hub.docker.com/)
|
- Making the extension image available on [Docker Hub](https://hub.docker.com/)
|
||||||
|
|
||||||
See [Package and release your extension](DISTRIBUTION.md) for more details about the release process.
|
See [Package and release your extension](DISTRIBUTION.md) for more details about the release process.
|
||||||
|
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 64 KiB |
|
Before Width: | Height: | Size: 721 KiB After Width: | Height: | Size: 721 KiB |
|
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 76 KiB |
|
|
@ -2,6 +2,8 @@
|
||||||
title: Extension image labels
|
title: Extension image labels
|
||||||
description: Docker extension labels
|
description: Docker extension labels
|
||||||
keywords: Docker, extensions, sdk, labels
|
keywords: Docker, extensions, sdk, labels
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/extensions/labels/
|
||||||
---
|
---
|
||||||
|
|
||||||
Extensions use image labels to provide additional information such as a title, description, screenshots, and more.
|
Extensions use image labels to provide additional information such as a title, description, screenshots, and more.
|
||||||
|
|
@ -10,7 +12,7 @@ This information is then displayed as an overview of the extension, so users can
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
You can define [image labels](../../../reference/dockerfile.md#label) in the extension's `Dockerfile`.
|
You can define [image labels](/reference/dockerfile.md#label) in the extension's `Dockerfile`.
|
||||||
|
|
||||||
> **Important**
|
> **Important**
|
||||||
>
|
>
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Build the extensions for multiple architectures
|
title: Build the extensions for multiple architectures
|
||||||
description: Step three in creating an extension.
|
description: Step three in creating an extension.
|
||||||
keywords: Docker, Extensions, sdk, build, multi-arch
|
keywords: Docker, Extensions, sdk, build, multi-arch
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/extensions/multi-arch/
|
||||||
---
|
---
|
||||||
|
|
||||||
It is highly recommended that, at a minimum, your extension is supported for the following architectures:
|
It is highly recommended that, at a minimum, your extension is supported for the following architectures:
|
||||||
|
|
@ -34,7 +36,7 @@ $ docker buildx build --push --platform=linux/amd64,linux/arm64 --tag=username/m
|
||||||
```
|
```
|
||||||
|
|
||||||
You can then check the image manifest to see if the image is available for both
|
You can then check the image manifest to see if the image is available for both
|
||||||
architectures using the [`docker buildx imagetools` command](../../../reference/cli/docker/buildx/imagetools/_index.md):
|
architectures using the [`docker buildx imagetools` command](/reference/cli/docker/buildx/imagetools/_index.md):
|
||||||
|
|
||||||
```console
|
```console
|
||||||
$ docker buildx imagetools inspect username/my-extension:0.0.1
|
$ docker buildx imagetools inspect username/my-extension:0.0.1
|
||||||
|
|
@ -57,7 +59,7 @@ Manifests:
|
||||||
> If you're having trouble pushing the image, make sure you're signed in to Docker Hub. Otherwise, run `docker login` to authenticate.
|
> If you're having trouble pushing the image, make sure you're signed in to Docker Hub. Otherwise, run `docker login` to authenticate.
|
||||||
{ .tip }
|
{ .tip }
|
||||||
|
|
||||||
For more information, see [Multi-platform images](../../../build/building/multi-platform.md) page.
|
For more information, see [Multi-platform images](/build/building/multi-platform.md) page.
|
||||||
|
|
||||||
## Adding multi-arch binaries
|
## Adding multi-arch binaries
|
||||||
|
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Publish your extension in the Marketplace
|
title: Publish your extension in the Marketplace
|
||||||
description: Docker extension distribution
|
description: Docker extension distribution
|
||||||
keywords: Docker, extensions, publish
|
keywords: Docker, extensions, publish
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/extensions/publish/
|
||||||
---
|
---
|
||||||
|
|
||||||
## Submit your extension to the Marketplace
|
## Submit your extension to the Marketplace
|
||||||
|
|
@ -9,7 +11,7 @@ keywords: Docker, extensions, publish
|
||||||
Docker Desktop displays published extensions in the Extensions Marketplace on [Docker Desktop](https://open.docker.com/extensions/marketplace) and [Docker Hub](https://hub.docker.com/search?q=&type=extension).
|
Docker Desktop displays published extensions in the Extensions Marketplace on [Docker Desktop](https://open.docker.com/extensions/marketplace) and [Docker Hub](https://hub.docker.com/search?q=&type=extension).
|
||||||
The Extensions Marketplace is a space where developers can discover extensions to improve their developer experience and propose their own extension to be available for all Desktop users.
|
The Extensions Marketplace is a space where developers can discover extensions to improve their developer experience and propose their own extension to be available for all Desktop users.
|
||||||
|
|
||||||
Whenever you are [ready to publish](./DISTRIBUTION.md) your extension in the Marketplace, you can [self-publish your extension](https://github.com/docker/extensions-submissions/issues/new?assignees=&labels=&template=1_automatic_review.yaml&title=%5BSubmission%5D%3A+)
|
Whenever you are [ready to publish](DISTRIBUTION.md) your extension in the Marketplace, you can [self-publish your extension](https://github.com/docker/extensions-submissions/issues/new?assignees=&labels=&template=1_automatic_review.yaml&title=%5BSubmission%5D%3A+)
|
||||||
|
|
||||||
> **Note**
|
> **Note**
|
||||||
>
|
>
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Share your extension
|
title: Share your extension
|
||||||
description: Share your extension with a share link
|
description: Share your extension with a share link
|
||||||
keywords: Docker, extensions, share
|
keywords: Docker, extensions, share
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/extensions/share/
|
||||||
---
|
---
|
||||||
|
|
||||||
Once your extension image is accessible on Docker Hub, anyone with access to the image can install the extension.
|
Once your extension image is accessible on Docker Hub, anyone with access to the image can install the extension.
|
||||||
|
|
@ -3,9 +3,10 @@ title: Validate your extension
|
||||||
description: Step three in the extension creation process
|
description: Step three in the extension creation process
|
||||||
keywords: Docker, Extensions, sdk, validate, install
|
keywords: Docker, Extensions, sdk, validate, install
|
||||||
aliases:
|
aliases:
|
||||||
- /desktop/extensions-sdk/extensions/validation/
|
- /desktop/extensions-sdk/extensions/validation/
|
||||||
- /desktop/extensions-sdk/build/build-install/
|
- /desktop/extensions-sdk/build/build-install/
|
||||||
- /desktop/extensions-sdk/dev/cli/build-test-install-extension/
|
- /desktop/extensions-sdk/dev/cli/build-test-install-extension/
|
||||||
|
- /desktop/extensions-sdk/extensions/validate/
|
||||||
---
|
---
|
||||||
|
|
||||||
Validate your extension before you share or publish it. Validating the extension ensures that the extension:
|
Validate your extension before you share or publish it. Validating the extension ensures that the extension:
|
||||||
|
Before Width: | Height: | Size: 232 KiB After Width: | Height: | Size: 232 KiB |
|
|
@ -3,6 +3,8 @@ title: Invoke host binaries
|
||||||
description: Add invocations to host binaries from the frontend with the extension
|
description: Add invocations to host binaries from the frontend with the extension
|
||||||
SDK.
|
SDK.
|
||||||
keywords: Docker, extensions, sdk, build
|
keywords: Docker, extensions, sdk, build
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/guides/invoke-host-binaries/
|
||||||
---
|
---
|
||||||
|
|
||||||
In some cases, your extension may need to invoke some command from the host. For example, you
|
In some cases, your extension may need to invoke some command from the host. For example, you
|
||||||
|
|
@ -3,7 +3,8 @@ title: Interacting with Kubernetes from an extension
|
||||||
description: How to connect to a Kubernetes cluster from an extension
|
description: How to connect to a Kubernetes cluster from an extension
|
||||||
keywords: Docker, Extensions, sdk, Kubernetes
|
keywords: Docker, Extensions, sdk, Kubernetes
|
||||||
aliases:
|
aliases:
|
||||||
- /desktop/extensions-sdk/dev/kubernetes/
|
- /desktop/extensions-sdk/dev/kubernetes/
|
||||||
|
- /desktop/extensions-sdk/guides/kubernetes/
|
||||||
---
|
---
|
||||||
|
|
||||||
The Extensions SDK does not provide any API methods to directly interact with the Docker Desktop managed Kubernetes cluster or any other created using other tools such as KinD. However, this page provides a way for you to use other SDK APIs to interact indirectly with a Kubernetes cluster from your extension.
|
The Extensions SDK does not provide any API methods to directly interact with the Docker Desktop managed Kubernetes cluster or any other created using other tools such as KinD. However, this page provides a way for you to use other SDK APIs to interact indirectly with a Kubernetes cluster from your extension.
|
||||||
|
|
@ -22,7 +23,7 @@ Docker Desktop conveniently provides the user with a local preconfigured `kubeco
|
||||||
|
|
||||||
If your extension needs to interact with Kubernetes clusters, it is recommended that you include the `kubectl` command line tool as part of your extension. By doing this, users who install your extension get `kubectl` installed on their host.
|
If your extension needs to interact with Kubernetes clusters, it is recommended that you include the `kubectl` command line tool as part of your extension. By doing this, users who install your extension get `kubectl` installed on their host.
|
||||||
|
|
||||||
To find out how to ship the `kubectl` command line tool for multiple platforms as part of your Docker Extension image, see [Build multi-arch extensions](../../../desktop/extensions-sdk/extensions/multi-arch.md#adding-multi-arch-binaries).
|
To find out how to ship the `kubectl` command line tool for multiple platforms as part of your Docker Extension image, see [Build multi-arch extensions](../extensions/multi-arch.md#adding-multi-arch-binaries).
|
||||||
|
|
||||||
## Examples
|
## Examples
|
||||||
|
|
||||||
|
|
@ -3,7 +3,8 @@ title: OAuth 2.0 flow
|
||||||
description: Docker extension OAuth 2.0 flow
|
description: Docker extension OAuth 2.0 flow
|
||||||
keywords: Docker, extensions, sdk, OAuth 2.0
|
keywords: Docker, extensions, sdk, OAuth 2.0
|
||||||
aliases:
|
aliases:
|
||||||
- /desktop/extensions-sdk/dev/oauth2-flow/
|
- /desktop/extensions-sdk/dev/oauth2-flow/
|
||||||
|
- /desktop/extensions-sdk/guides/oauth2-flow/
|
||||||
---
|
---
|
||||||
|
|
||||||
> **Note**
|
> **Note**
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
title: Use the Docker socket from the extension backend
|
title: Use the Docker socket from the extension backend
|
||||||
description: Docker extension metadata
|
description: Docker extension metadata
|
||||||
keywords: Docker, extensions, sdk, metadata
|
keywords: Docker, extensions, sdk, metadata
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/guides/use-docker-socket-from-backend/
|
||||||
---
|
---
|
||||||
|
|
||||||
Extensions can invoke Docker commands directly from the frontend with the SDK.
|
Extensions can invoke Docker commands directly from the frontend with the SDK.
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
description: Understand the process of creating an extension.
|
description: Understand the process of creating an extension.
|
||||||
title: The build and publish process
|
title: The build and publish process
|
||||||
keyword: Docker Extensions, sdk, build, create, publish
|
keyword: Docker Extensions, sdk, build, create, publish
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions-sdk/process/
|
||||||
---
|
---
|
||||||
|
|
||||||
This documentation is structured so that it matches the steps you need to take when creating your extension.
|
This documentation is structured so that it matches the steps you need to take when creating your extension.
|
||||||
|
|
@ -38,7 +40,7 @@ For further inspiration, see the other examples in the [samples folder](https://
|
||||||
|
|
||||||
Docker Desktop displays published extensions in the Extensions Marketplace. The Extensions Marketplace is a curated space where developers can discover extensions to improve their developer experience and upload their own extension to share with the world.
|
Docker Desktop displays published extensions in the Extensions Marketplace. The Extensions Marketplace is a curated space where developers can discover extensions to improve their developer experience and upload their own extension to share with the world.
|
||||||
|
|
||||||
If you want your extension published in the Marketplace, read the [publish documentation](./extensions/publish.md).
|
If you want your extension published in the Marketplace, read the [publish documentation](extensions/publish.md).
|
||||||
|
|
||||||
{{< include "extensions-form.md" >}}
|
{{< include "extensions-form.md" >}}
|
||||||
|
|
||||||
|
|
@ -3,18 +3,19 @@ title: Quickstart
|
||||||
description: Guide on how to build an extension quickly
|
description: Guide on how to build an extension quickly
|
||||||
keywords: quickstart, extensions
|
keywords: quickstart, extensions
|
||||||
aliases:
|
aliases:
|
||||||
- desktop/extensions-sdk/tutorials/initialize/
|
- desktop/extensions-sdk/tutorials/initialize/
|
||||||
|
- /desktop/extensions-sdk/quickstart/
|
||||||
---
|
---
|
||||||
|
|
||||||
Follow this guide to get started with creating a basic Docker extension. The Quickstart guide automatically generates boilerplate files for you.
|
Follow this guide to get started with creating a basic Docker extension. The Quickstart guide automatically generates boilerplate files for you.
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
- [Docker Desktop](../release-notes.md)
|
- [Docker Desktop](/desktop/release-notes.md)
|
||||||
- [NodeJS](https://nodejs.org/)
|
- [NodeJS](https://nodejs.org/)
|
||||||
- [Go](https://go.dev/dl/)
|
- [Go](https://go.dev/dl/)
|
||||||
|
|
||||||
> Note
|
> **Note**
|
||||||
>
|
>
|
||||||
> NodeJS and Go are only required when you follow the quickstart guide to create an extension. It uses the `docker extension init` command to automatically generate boilerplate files. This command uses a template based on a ReactJS and Go application.
|
> NodeJS and Go are only required when you follow the quickstart guide to create an extension. It uses the `docker extension init` command to automatically generate boilerplate files. This command uses a template based on a ReactJS and Go application.
|
||||||
|
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
description: Extensions
|
description: Extensions
|
||||||
keywords: Docker Extensions, Docker Desktop, Linux, Mac, Windows, Marketplace
|
keywords: Docker Extensions, Docker Desktop, Linux, Mac, Windows, Marketplace
|
||||||
title: Marketplace extensions
|
title: Marketplace extensions
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions/marketplace/
|
||||||
---
|
---
|
||||||
|
|
||||||
There are two types of extensions available in the Extensions Marketplace:
|
There are two types of extensions available in the Extensions Marketplace:
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
description: Extensions
|
description: Extensions
|
||||||
keywords: Docker Extensions, Docker Desktop, Linux, Mac, Windows,
|
keywords: Docker Extensions, Docker Desktop, Linux, Mac, Windows,
|
||||||
title: Non-Marketplace extensions
|
title: Non-Marketplace extensions
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions/non-marketplace/
|
||||||
---
|
---
|
||||||
|
|
||||||
## Install an extension not available in the Marketplace
|
## Install an extension not available in the Marketplace
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
description: How to configure and use Docker Extensions' private marketplace
|
description: How to configure and use Docker Extensions' private marketplace
|
||||||
keywords: Docker Extensions, Docker Desktop, Linux, Mac, Windows, Marketplace, private, security
|
keywords: Docker Extensions, Docker Desktop, Linux, Mac, Windows, Marketplace, private, security
|
||||||
title: Configure a private marketplace for extensions
|
title: Configure a private marketplace for extensions
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions/private-marketplace/
|
||||||
---
|
---
|
||||||
|
|
||||||
> **Beta**
|
> **Beta**
|
||||||
|
|
@ -14,7 +16,7 @@ Learn how to configure and set up a private marketplace with a curated list of e
|
||||||
|
|
||||||
It is designed specifically
|
It is designed specifically
|
||||||
|
|
||||||
Docker Extensions' private marketplace is designed specifically for organizations who don’t give developers root access to their machines. It makes use of [Settings Management](../hardened-desktop/settings-management/_index.md) so administrators have complete control over the private marketplace.
|
Docker Extensions' private marketplace is designed specifically for organizations who don’t give developers root access to their machines. It makes use of [Settings Management](/desktop/hardened-desktop/settings-management/_index.md) so administrators have complete control over the private marketplace.
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
|
|
@ -80,7 +82,7 @@ Each setting has a `value` that you can set, including a `locked` field that let
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
To find out more information about the `admin-settings.json` file, see [Settings Management](../hardened-desktop/settings-management/_index.md).
|
To find out more information about the `admin-settings.json` file, see [Settings Management](/desktop/hardened-desktop/settings-management/_index.md).
|
||||||
|
|
||||||
## Step three: List allowed extensions
|
## Step three: List allowed extensions
|
||||||
|
|
||||||
|
|
@ -137,7 +139,7 @@ $ /opt/docker-desktop/extension-admin generate
|
||||||
|
|
||||||
This creates an `extension-marketplace` directory and downloads the marketplace metadata for all the allowed extensions.
|
This creates an `extension-marketplace` directory and downloads the marketplace metadata for all the allowed extensions.
|
||||||
|
|
||||||
The marketplace content is generated from extension image information as image labels, which is the [same format as public extensions](../extensions-sdk/extensions/labels.md). It includes the extension title, description, screenshots, links, etc.
|
The marketplace content is generated from extension image information as image labels, which is the [same format as public extensions](extensions-sdk/extensions/labels.md). It includes the extension title, description, screenshots, links, etc.
|
||||||
|
|
||||||
## Step five: Test the private marketplace setup
|
## Step five: Test the private marketplace setup
|
||||||
|
|
||||||
|
|
@ -194,7 +196,7 @@ These files must be placed on developer's machines. Depending on your operating
|
||||||
- Windows: `C:\ProgramData\DockerDesktop`
|
- Windows: `C:\ProgramData\DockerDesktop`
|
||||||
- Linux: `/usr/share/docker-desktop`
|
- Linux: `/usr/share/docker-desktop`
|
||||||
|
|
||||||
Make sure your developers are signed in to Docker Desktop in order for the private marketplace configuration to take effect. As an administrator, you should [configure a registry.json to enforce Docker Desktop sign-in](../../security/for-admins/configure-sign-in.md).
|
Make sure your developers are signed in to Docker Desktop in order for the private marketplace configuration to take effect. As an administrator, you should [configure a registry.json to enforce Docker Desktop sign-in](/security/for-admins/configure-sign-in.md).
|
||||||
|
|
||||||
## Feedback
|
## Feedback
|
||||||
|
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
description: Extensions
|
description: Extensions
|
||||||
keywords: Docker Extensions, Docker Desktop, Linux, Mac, Windows, feedback
|
keywords: Docker Extensions, Docker Desktop, Linux, Mac, Windows, feedback
|
||||||
title: Settings and feedback for Docker Extensions
|
title: Settings and feedback for Docker Extensions
|
||||||
|
aliases:
|
||||||
|
- /desktop/extensions/settings-feedback/
|
||||||
---
|
---
|
||||||
|
|
||||||
## Settings
|
## Settings
|
||||||
|
|
@ -17,12 +19,12 @@ Docker Extensions is switched on by default. To change your settings:
|
||||||
|
|
||||||
>**Note**
|
>**Note**
|
||||||
>
|
>
|
||||||
> If you are an [organization owner](../../admin/organization/manage-a-team.md#organization-owner), you can turn off extensions for your users. Open the `settings.json` file, and set `"extensionsEnabled"` to `false`.
|
> If you are an [organization owner](/admin/organization/manage-a-team.md#organization-owner), you can turn off extensions for your users. Open the `settings.json` file, and set `"extensionsEnabled"` to `false`.
|
||||||
> The `settings.json` file is located at:
|
> The `settings.json` file is located at:
|
||||||
> - `~/Library/Group Containers/group.com.docker/settings.json` on Mac
|
> - `~/Library/Group Containers/group.com.docker/settings.json` on Mac
|
||||||
> - `C:\Users\[USERNAME]\AppData\Roaming\Docker\settings.json` on Windows
|
> - `C:\Users\[USERNAME]\AppData\Roaming\Docker\settings.json` on Windows
|
||||||
>
|
>
|
||||||
> This can also be done with [Hardened Docker Desktop](../hardened-desktop/index.md)
|
> This can also be done with [Hardened Docker Desktop](/desktop/hardened-desktop/index.md)
|
||||||
|
|
||||||
### Turn on or turn off extensions not available in the Marketplace
|
### Turn on or turn off extensions not available in the Marketplace
|
||||||
|
|
||||||
|
|
@ -24,7 +24,7 @@ development:
|
||||||
- title: Docker Extensions
|
- title: Docker Extensions
|
||||||
description: Customize your Docker Desktop workflow.
|
description: Customize your Docker Desktop workflow.
|
||||||
icon: extension
|
icon: extension
|
||||||
link: /desktop/extensions/
|
link: /extensions/
|
||||||
services:
|
services:
|
||||||
- title: Docker Hub
|
- title: Docker Hub
|
||||||
description: Discover, share, and integrate container images
|
description: Discover, share, and integrate container images
|
||||||
|
|
|
||||||
126
data/toc.yaml
|
|
@ -983,51 +983,55 @@ Reference:
|
||||||
path: /docker-hub/api/deprecated/
|
path: /docker-hub/api/deprecated/
|
||||||
- sectiontitle: Docker Extension SDK API
|
- sectiontitle: Docker Extension SDK API
|
||||||
section:
|
section:
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/DesktopUI/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/DesktopUI/
|
||||||
title: DesktopUI
|
title: DesktopUI
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/Dialog/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/Dialog/
|
||||||
title: Dialog
|
title: Dialog
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/Docker/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/Docker/
|
||||||
title: Docker
|
title: Docker
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/DockerCommand/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/DockerCommand/
|
||||||
title: DockerCommand
|
title: DockerCommand
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/DockerDesktopClient/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/DockerDesktopClient/
|
||||||
title: DockerDesktopClient
|
title: DockerDesktopClient
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/Exec/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/Exec/
|
||||||
title: Exec
|
title: Exec
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/ExecProcess/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/ExecProcess/
|
||||||
title: ExecProcess
|
title: ExecProcess
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/ExecResult/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/ExecResult/
|
||||||
title: ExecResult
|
title: ExecResult
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/ExecStreamOptions/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/ExecStreamOptions/
|
||||||
title: ExecStreamOptions
|
title: ExecStreamOptions
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/Extension/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/Extension/
|
||||||
title: Extension
|
title: Extension
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/ExtensionCli/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/ExtensionCli/
|
||||||
title: ExtensionCli
|
title: ExtensionCli
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/ExtensionHost/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/ExtensionHost/
|
||||||
title: ExtensionHost
|
title: ExtensionHost
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/ExtensionVM/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/ExtensionVM/
|
||||||
title: ExtensionVM
|
title: ExtensionVM
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/Host/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/Host/
|
||||||
title: Host
|
title: Host
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/HttpService/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/HttpService/
|
||||||
title: HttpService
|
title: HttpService
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/NavigationIntents/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/NavigationIntents/
|
||||||
title: NavigationIntents
|
title: NavigationIntents
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/OpenDialogResult/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/OpenDialogResult/
|
||||||
title: OpenDialogResult
|
title: OpenDialogResult
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/RawExecResult/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/RawExecResult/
|
||||||
title: RawExecResult
|
title: RawExecResult
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/RequestConfig/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/RequestConfig/
|
||||||
title: RequestConfig
|
title: RequestConfig
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/RequestConfigV0/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/RequestConfigV0/
|
||||||
title: RequestConfigV0
|
title: RequestConfigV0
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/Toast/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/ServiceError/
|
||||||
|
title: ServiceError
|
||||||
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/ServiceError/
|
||||||
|
title: SpawnOptions
|
||||||
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/Toast/
|
||||||
title: Toast
|
title: Toast
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/ExecResultV0/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/ExecResultV0/
|
||||||
title: ExecResultV0
|
title: ExecResultV0
|
||||||
- path: /desktop/extensions-sdk/dev/api/reference/interfaces/BackendV0/
|
- path: /extensions/extensions-sdk/dev/api/reference/interfaces/BackendV0/
|
||||||
title: BackendV0
|
title: BackendV0
|
||||||
- sectiontitle: Compose file reference
|
- sectiontitle: Compose file reference
|
||||||
section:
|
section:
|
||||||
|
|
@ -1346,100 +1350,100 @@ Manuals:
|
||||||
|
|
||||||
- sectiontitle: Docker Extensions
|
- sectiontitle: Docker Extensions
|
||||||
section:
|
section:
|
||||||
- path: /desktop/extensions/
|
- path: /extensions/
|
||||||
title: Overview
|
title: Overview
|
||||||
- sectiontitle: Extensions on Docker Desktop
|
- sectiontitle: Extensions on Docker Desktop
|
||||||
section:
|
section:
|
||||||
- path: /desktop/extensions/marketplace/
|
- path: /extensions/marketplace/
|
||||||
title: Manage Marketplace extensions
|
title: Manage Marketplace extensions
|
||||||
- path: /desktop/extensions/non-marketplace/
|
- path: /extensions/non-marketplace/
|
||||||
title: Manage non-Marketplace extensions
|
title: Manage non-Marketplace extensions
|
||||||
- path: /desktop/extensions/settings-feedback/
|
- path: /extensions/settings-feedback/
|
||||||
title: Change settings and give feedback
|
title: Change settings and give feedback
|
||||||
- path: /desktop/extensions/private-marketplace/
|
- path: /extensions/private-marketplace/
|
||||||
title: Configure a private Marketplace (Beta)
|
title: Configure a private Marketplace (Beta)
|
||||||
- sectiontitle: Extensions SDK
|
- sectiontitle: Extensions SDK
|
||||||
section:
|
section:
|
||||||
- path: /desktop/extensions-sdk/
|
- path: /extensions/extensions-sdk/
|
||||||
title: Overview
|
title: Overview
|
||||||
- path: /desktop/extensions-sdk/process/
|
- path: /extensions/extensions-sdk/process/
|
||||||
title: The build and publish process
|
title: The build and publish process
|
||||||
- path: /desktop/extensions-sdk/quickstart/
|
- path: /extensions/extensions-sdk/quickstart/
|
||||||
title: Quickstart
|
title: Quickstart
|
||||||
- sectiontitle: "Part one: Build"
|
- sectiontitle: "Part one: Build"
|
||||||
section:
|
section:
|
||||||
- title: Create a simple extension
|
- title: Create a simple extension
|
||||||
path: /desktop/extensions-sdk/build/minimal-frontend-extension/
|
path: /extensions/extensions-sdk/build/minimal-frontend-extension/
|
||||||
- title: Create an advanced frontend extension
|
- title: Create an advanced frontend extension
|
||||||
path: /desktop/extensions-sdk/build/frontend-extension-tutorial/
|
path: /extensions/extensions-sdk/build/frontend-extension-tutorial/
|
||||||
- title: Add a backend to your extension
|
- title: Add a backend to your extension
|
||||||
path: /desktop/extensions-sdk/build/backend-extension-tutorial/
|
path: /extensions/extensions-sdk/build/backend-extension-tutorial/
|
||||||
- sectiontitle: "Part two: Publish"
|
- sectiontitle: "Part two: Publish"
|
||||||
section:
|
section:
|
||||||
- title: Overview
|
- title: Overview
|
||||||
path: /desktop/extensions-sdk/extensions/
|
path: /extensions/extensions-sdk/extensions/
|
||||||
- title: Labels
|
- title: Labels
|
||||||
path: /desktop/extensions-sdk/extensions/labels/
|
path: /extensions/extensions-sdk/extensions/labels/
|
||||||
- title: Validate
|
- title: Validate
|
||||||
path: /desktop/extensions-sdk/extensions/validate/
|
path: /extensions/extensions-sdk/extensions/validate/
|
||||||
- title: Package and release your extension
|
- title: Package and release your extension
|
||||||
path: /desktop/extensions-sdk/extensions/DISTRIBUTION/
|
path: /extensions/extensions-sdk/extensions/DISTRIBUTION/
|
||||||
- title: Generate a share link
|
- title: Generate a share link
|
||||||
path: /desktop/extensions-sdk/extensions/share/
|
path: /extensions/extensions-sdk/extensions/share/
|
||||||
- title: Publish in the Marketplace
|
- title: Publish in the Marketplace
|
||||||
path: /desktop/extensions-sdk/extensions/publish/
|
path: /extensions/extensions-sdk/extensions/publish/
|
||||||
- title: Build multi-arch extensions
|
- title: Build multi-arch extensions
|
||||||
path: /desktop/extensions-sdk/extensions/multi-arch/
|
path: /extensions/extensions-sdk/extensions/multi-arch/
|
||||||
- sectiontitle: "Architecture"
|
- sectiontitle: "Architecture"
|
||||||
section:
|
section:
|
||||||
- title: Overview
|
- title: Overview
|
||||||
path: /desktop/extensions-sdk/architecture/
|
path: /extensions/extensions-sdk/architecture/
|
||||||
- title: Metadata
|
- title: Metadata
|
||||||
path: /desktop/extensions-sdk/architecture/metadata/
|
path: /extensions/extensions-sdk/architecture/metadata/
|
||||||
- title: Security
|
- title: Security
|
||||||
path: /desktop/extensions-sdk/architecture/security/
|
path: /extensions/extensions-sdk/architecture/security/
|
||||||
- sectiontitle: "Design and UI styling"
|
- sectiontitle: "Design and UI styling"
|
||||||
section:
|
section:
|
||||||
- title: UI styling guidelines
|
- title: UI styling guidelines
|
||||||
path: /desktop/extensions-sdk/design/
|
path: /extensions/extensions-sdk/design/
|
||||||
- title: Guidelines
|
- title: Guidelines
|
||||||
path: /desktop/extensions-sdk/design/design-guidelines/
|
path: /extensions/extensions-sdk/design/design-guidelines/
|
||||||
- title: Docker design principles
|
- title: Docker design principles
|
||||||
path: /desktop/extensions-sdk/design/design-principles/
|
path: /extensions/extensions-sdk/design/design-principles/
|
||||||
- title: MUI best practices
|
- title: MUI best practices
|
||||||
path: /desktop/extensions-sdk/design/mui-best-practices/
|
path: /extensions/extensions-sdk/design/mui-best-practices/
|
||||||
- sectiontitle: "Developer Guides"
|
- sectiontitle: "Developer Guides"
|
||||||
section:
|
section:
|
||||||
- title: Invoke host binaries
|
- title: Invoke host binaries
|
||||||
path: /desktop/extensions-sdk/guides/invoke-host-binaries/
|
path: /extensions/extensions-sdk/guides/invoke-host-binaries/
|
||||||
- title: Use the Docker socket from the extension backend
|
- title: Use the Docker socket from the extension backend
|
||||||
path: /desktop/extensions-sdk/guides/use-docker-socket-from-backend/
|
path: /extensions/extensions-sdk/guides/use-docker-socket-from-backend/
|
||||||
- title: Interacting with Kubernetes
|
- title: Interacting with Kubernetes
|
||||||
path: /desktop/extensions-sdk/guides/kubernetes/
|
path: /extensions/extensions-sdk/guides/kubernetes/
|
||||||
- title: Authentication
|
- title: Authentication
|
||||||
path: /desktop/extensions-sdk/guides/oauth2-flow/
|
path: /extensions/extensions-sdk/guides/oauth2-flow/
|
||||||
- sectiontitle: Developer SDK tools
|
- sectiontitle: Developer SDK tools
|
||||||
section:
|
section:
|
||||||
- title: "Test and debug"
|
- title: "Test and debug"
|
||||||
path: /desktop/extensions-sdk/dev/test-debug/
|
path: /extensions/extensions-sdk/dev/test-debug/
|
||||||
- title: "Continuous integration"
|
- title: "Continuous integration"
|
||||||
path: /desktop/extensions-sdk/dev/continuous-integration/
|
path: /extensions/extensions-sdk/dev/continuous-integration/
|
||||||
- title: CLI reference
|
- title: CLI reference
|
||||||
path: /desktop/extensions-sdk/dev/usage/
|
path: /extensions/extensions-sdk/dev/usage/
|
||||||
- sectiontitle: Extension APIs
|
- sectiontitle: Extension APIs
|
||||||
section:
|
section:
|
||||||
- title: Overview
|
- title: Overview
|
||||||
path: /desktop/extensions-sdk/dev/api/overview/
|
path: /extensions/extensions-sdk/dev/api/overview/
|
||||||
- title: Extension Backend
|
- title: Extension Backend
|
||||||
path: /desktop/extensions-sdk/dev/api/backend/
|
path: /extensions/extensions-sdk/dev/api/backend/
|
||||||
- title: Docker
|
- title: Docker
|
||||||
path: /desktop/extensions-sdk/dev/api/docker/
|
path: /extensions/extensions-sdk/dev/api/docker/
|
||||||
- title: Dashboard
|
- title: Dashboard
|
||||||
path: /desktop/extensions-sdk/dev/api/dashboard/
|
path: /extensions/extensions-sdk/dev/api/dashboard/
|
||||||
- title: Navigation
|
- title: Navigation
|
||||||
path: /desktop/extensions-sdk/dev/api/dashboard-routes-navigation/
|
path: /extensions/extensions-sdk/dev/api/dashboard-routes-navigation/
|
||||||
- title: API Reference
|
- title: API Reference
|
||||||
path: /desktop/extensions-sdk/dev/api/reference/README/
|
path: /extensions/extensions-sdk/dev/api/reference/README/
|
||||||
|
|
||||||
- sectiontitle: Docker Scout
|
- sectiontitle: Docker Scout
|
||||||
section:
|
section:
|
||||||
|
|
|
||||||