Skip to content

Commit c4fa0e3

Browse files
github-actions[bot]sheltongravesaevesdockerArthurFlag
authored
publish updates from main (#23040)
Automated pull request for publishing docs updates. --------- Co-authored-by: sheltongraves <[email protected]> Co-authored-by: Allie Sadler <[email protected]> Co-authored-by: Arthur <[email protected]>
1 parent b1bbfce commit c4fa0e3

File tree

26 files changed

+262
-73
lines changed

26 files changed

+262
-73
lines changed

assets/css/components.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@
9595
}
9696
}
9797
.button {
98-
@apply mt-1 inline-block rounded-sm bg-blue-500 p-1 px-3 text-blue-50 text-white hover:bg-blue-600 dark:bg-blue-500 hover:dark:bg-blue-400;
98+
@apply my-2 mr-2 inline-block rounded-sm bg-blue-500 p-1 px-3 text-blue-50 text-white hover:bg-blue-600 dark:bg-blue-500 hover:dark:bg-blue-400;
9999
}
100100

101101
.summary-bar {

content/includes/gordondhi.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
1. Ensure Gordon is [enabled](/manuals/ai/gordon.md#enable-ask-gordon).
2+
1. In Gordon's Toolbox, ensure Gordon's [Developer MCP toolkit is enabled](/manuals/ai/gordon/mcp/built-in-tools.md#configuration).
3+
1. In the terminal, navigate to the directory containing your Dockerfile.
4+
1. Start a conversation with Gordon:
5+
```bash
6+
docker ai
7+
```
8+
1. Type:
9+
```console
10+
"Migrate my dockerfile to DHI"
11+
```
12+
1. Follow the conversation with Gordon. Gordon will edit your Dockerfile, so when
13+
it requests access to the filesystem and more, type `yes` to allow Gordon to proceed.
14+
15+
> [!NOTE]
16+
> To learn more about Gordon's data retention and the data it
17+
> can access, see [Gordon](/manuals/ai/gordon.md#what-data-does-gordon-access).
18+
19+
When the migration is complete, you see a success message:
20+
21+
```text
22+
The migration to Docker Hardened Images (DHI) is complete. The updated Dockerfile
23+
successfully builds the image, and no vulnerabilities were detected in the final image.
24+
The functionality and optimizations of the original Dockerfile have been preserved.
25+
```
26+
27+
> [!IMPORTANT]
28+
> As with any AI tool, you must verify Gordon's edits and test your image.

content/manuals/_index.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,11 @@ params:
3131
description: Run containers programmatically in your preferred programming language.
3232
icon: /icons/Testcontainers.svg
3333
link: /testcontainers/
34+
- title: MCP Gateway
35+
description: Manage and secure your AI tools with a single gateway.
36+
icon: /icons/toolkit.svg
37+
link: /ai/mcp-gateway/
38+
3439
ai:
3540
- title: Ask Gordon
3641
description: Streamline your workflow and get the most out of the Docker ecosystem with your personal AI assistant.

content/manuals/ai/gordon/_index.md

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,13 @@ of the Docker ecosystem.
2020

2121
## Key features
2222

23-
Ask Gordon provides AI-powered assistance within Docker tools. It can:
23+
Ask Gordon provides AI-powered assistance in Docker tools. It can:
2424

2525
- Improve Dockerfiles
2626
- Run and troubleshoot containers
2727
- Interact with your images and code
2828
- Find vulnerabilities or configuration issues
29+
- Migrate a Dockerfile to use [Docker Hardened Images](/manuals/dhi/_index.md)
2930

3031
It understands your local environment, including source code, Dockerfiles, and
3132
images, to provide personalized and actionable guidance.
@@ -104,9 +105,10 @@ If you have concerns about data collection or usage, you can
104105
105106
## Using Ask Gordon
106107

107-
The primary interfaces to Docker's AI capabilities are through the **Ask
108-
Gordon** view in Docker Desktop, or if you prefer to use the CLI: the `docker
109-
ai` CLI command.
108+
You can access Gordon:
109+
110+
- In Docker Desktop, in the **Ask Gordon** view.
111+
- Via the Docker CLI, with the `docker ai` CLI command.
110112

111113
Once you've enabled the Docker AI features, you'll also find references to **Ask
112114
Gordon** in various other places throughout the Docker Desktop user interface.
@@ -122,6 +124,7 @@ ways things you can try:
122124
- [Troubleshoot a crashed container](#troubleshoot-a-crashed-container)
123125
- [Get help with running a container](#get-help-with-running-a-container)
124126
- [Improve a Dockerfile](#improve-a-dockerfile)
127+
- [Migrate a Dockerfile to DHI](#migrate-a-dockerfile-to-dhi)
125128

126129
For more examples, try asking Gordon directly. For example:
127130

@@ -197,6 +200,17 @@ across several dimensions:
197200
- Portability
198201
- Resource efficiency
199202

203+
### Migrate a Dockerfile to DHI
204+
205+
Migrating your Dockerfile to use [Docker Hardened Images](/manuals/dhi/_index.md) helps you build
206+
more secure, minimal, and production-ready containers. DHIs are designed to
207+
reduce vulnerabilities, enforce best practices, and simplify compliance, making
208+
them a strong foundation for secure software supply chains.
209+
210+
To request Gordon's help for the migration:
211+
212+
{{% include "gordondhi.md" %}}
213+
200214
## Disable Ask Gordon
201215

202216
### For individual users

content/manuals/ai/mcp-catalog-and-toolkit/hub-mcp.md

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,13 @@ The Docker Hub MCP Server is a Model Context Protocol (MCP) server that interfac
2929
> which means Gordon can automatically interact with your MCP servers.
3030
3131
## Using other clients
32-
If want to integrate the Docker Hub MCP Server into your own development environment, you can find the source code and installation instructions on our [GitHub repository](https://github.com/docker/hub-mcp).
32+
If want to integrate the Docker Hub MCP Server into your own development environment, you can find the source code and installation instructions on our [GitHub repository](https://github.com/docker/hub-mcp).
3333

3434
## Use Claude Desktop as a client
3535

3636
1. Add the Docker Hub MCP Server configuration to your `claude_desktop_config.json`:
3737

38-
### For public repositories only:
38+
### For public repositories only
3939

4040
- `/FULL/PATH/TO/YOUR/docker-hub-mcp-server` - The complete path to where you cloned this repository
4141
```json
@@ -48,11 +48,13 @@ If want to integrate the Docker Hub MCP Server into your own development environ
4848
}
4949
}
5050
```
51-
### For authenticated access (recommended):
51+
52+
### For authenticated access
53+
5254
Replace the following values:
5355
- `YOUR_DOCKER_HUB_USERNAME` - Your Docker Hub username
5456
- `YOUR_DOCKER_HUB_PERSONAL_ACCESS_TOKEN` - Your Docker Hub Personal Access Token
55-
- `/FULL/PATH/TO/YOUR/docker-hub-mcp-server` - The complete path to where you cloned this
57+
- `/FULL/PATH/TO/YOUR/docker-hub-mcp-server` - The complete path to where you cloned this
5658

5759
```json
5860
{
@@ -67,12 +69,15 @@ If want to integrate the Docker Hub MCP Server into your own development environ
6769
}
6870
}
6971
```
70-
2. Save the configuration file and completely restart Claude Desktop for the changes to take effect.
72+
73+
1. Save the configuration file and completely restart Claude Desktop for the changes to take effect.
7174

7275
## Usage with VS Code
76+
7377
1. Add the Docker Hub MCP Server configuration to your User Settings (JSON) file in VS Code. You can do this by opening the `Command Palette` and typing `Preferences: Open User Settings (JSON)`.
7478

75-
### For public repositories only:
79+
### For public repositories only
80+
7681

7782
- `/FULL/PATH/TO/YOUR/docker-hub-mcp-server` - The complete path to where you cloned this repository
7883
```json
@@ -85,11 +90,13 @@ If want to integrate the Docker Hub MCP Server into your own development environ
8590
}
8691
}
8792
```
88-
### For authenticated access (recommended):
93+
94+
### For authenticated access
95+
8996
Replace the following values:
9097
- `YOUR_DOCKER_HUB_USERNAME` - Your Docker Hub username
9198
- `YOUR_DOCKER_HUB_PERSONAL_ACCESS_TOKEN` - Your Docker Hub Personal Access Token
92-
- `/FULL/PATH/TO/YOUR/docker-hub-mcp-server` - The complete path to where you cloned this
99+
- `/FULL/PATH/TO/YOUR/docker-hub-mcp-server` - The complete path to where you cloned this
93100

94101
```json
95102
{
@@ -105,16 +112,17 @@ If want to integrate the Docker Hub MCP Server into your own development environ
105112
}
106113
}
107114
```
108-
2. Open the `Command Palette` and type `MCP: List Servers`.
109-
3. Select `docker-hub` and select `Start Server`.
115+
116+
1. Open the `Command Palette` and type `MCP: List Servers`.
117+
1. Select `docker-hub` and select `Start Server`.
110118

111119
## Usage examples
112120

113121
This section provides task-oriented examples for common operations with Docker Hub
114122
tools.
115123

124+
### Finding images
116125

117-
### Finding images
118126

119127
```console
120128
# Search for official images
@@ -123,7 +131,7 @@ $ docker ai "Search for official nginx images on Docker Hub"
123131
# Search for lightweight images to reduce deployment size and improve performance
124132
$ docker ai "Search for minimal Node.js images with small footprint"
125133

126-
# Get the most recent tag of a base image
134+
# Get the most recent tag of a base image
127135
$ docker ai "Show me the latest tag details for go"
128136

129137
# Find a production-ready database with enterprise features and reliability
@@ -133,7 +141,6 @@ $ docker ai "Search for production ready database images"
133141
$ docker ai "Help me find the right Ubuntu version for my project"
134142
```
135143

136-
137144
### Repository management
138145

139146
```console
@@ -156,7 +163,8 @@ $ docker ai "Show me my most recently updated repositories"
156163
$ docker ai "Show me information about my '<repository-name>' repository"
157164
```
158165

159-
### Pull/push images
166+
### Pull/push images
167+
160168

161169
```console
162170
# Pull latest PostgreSQL version

content/manuals/ai/mcp-catalog-and-toolkit/toolkit.md

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ aliases:
77
- /ai/gordon/mcp/gordon-mcp-server/
88
---
99

10-
The Docker MCP Toolkit enables seamless setup, management, and execution of containerized MCP servers and their connections to AI agents. It removes the friction from tool usage by offering secure defaults, one-click setup, and support for a growing ecosystem of LLM-based clients. It is the fastest path from MCP tool discovery to local execution.
10+
The Docker MCP Toolkit is a gateway that enables seamless setup, management, and execution of containerized MCP servers and their connections to AI agents. It removes the friction from tool usage by offering secure defaults, one-click setup, and support for a growing ecosystem of LLM-based clients. It is the fastest path from MCP tool discovery to local execution.
1111

1212
## Key features
1313

@@ -18,7 +18,7 @@ The Docker MCP Toolkit enables seamless setup, management, and execution of cont
1818

1919
## How the MCP toolkit works
2020

21-
MCP introduces two core concepts: MCP clients and MCP servers.
21+
MCP introduces two core concepts: MCP clients and MCP servers.
2222

2323
- MCP clients are typically embedded in LLM-based applications, such as
2424
the Claude Desktop App. They request resources or actions.
@@ -55,7 +55,7 @@ surfaces and ensure safe runtime behavior.
5555

5656
### Passive security
5757

58-
- Image signing and attestation: All MCP server images under `mcp/` in the [catalog](catalog.md)
58+
- Image signing and attestation: All MCP server images under `mcp/` in the [catalog](catalog.md)
5959
are built by Docker and digitally
6060
signed to verify their source and integrity. Each image includes a Software
6161
Bill of Materials (SBOM) for full transparency.
@@ -95,7 +95,7 @@ To install an MCP server:
9595
When you select a server you can see the following
9696
information:
9797

98-
- Tool name and description
98+
- Tool name and description
9999
- Partner/publisher
100100
- The list of callable tools the server provides.
101101

@@ -140,21 +140,21 @@ Your client can now interact with the MCP Toolkit.
140140

141141
### Example: Use Claude Desktop as a client
142142

143-
Imagine you have Claude Desktop installed, and you want to use the GitHub MCP server,
143+
Imagine you have Claude Desktop installed, and you want to use the GitHub MCP server,
144144
and the Puppeteer MCP server, you do not have to install the servers in Claude Desktop.
145145
You can simply install these 2 MCP servers in the MCP Toolkit,
146146
and add Claude Desktop as a client:
147147

148148
1. From the **MCP Toolkit** menu, select the **Catalog** tab and find the **Puppeteer** server and add it.
149149
2. Repeat for the **GitHub Official** server.
150-
3. From the **Clients** tab, select **Connect** next to **Claude Desktop**. Restart
150+
3. From the **Clients** tab, select **Connect** next to **Claude Desktop**. Restart
151151
Claude Desktop if it's running, and it can now access all the servers in the MCP Toolkit.
152152
4. Within Claude Desktop, run a test by submitting the following prompt using the Sonnet 3.5 model:
153153

154154
```text
155155
Take a screenshot of docs.docker.com and then invert the colors
156156
```
157-
5. From the **Clients** tab, select **Connect** next to **Claude Desktop**. Restart
157+
5. From the **Clients** tab, select **Connect** next to **Claude Desktop**. Restart
158158
Claude Desktop if it's running, and it can now access all the servers in the MCP Toolkit.
159159
6. Within Claude Desktop, run a test by submitting the following prompt using the Sonnet 3.5 model:
160160

@@ -173,7 +173,7 @@ You can interact with all your installed MCP servers in VS Code:
173173
{{< tab name="Enable globally">}}
174174

175175
1. Insert the following in your VS Code's User`settings.json`:
176-
176+
177177
```json
178178
"mcp": {
179179
"servers": {
@@ -195,11 +195,11 @@ You can interact with all your installed MCP servers in VS Code:
195195

196196
1. In your terminal, navigate to your project's folder.
197197
1. Run:
198-
198+
199199
```bash
200200
docker mcp client connect vscode
201201
```
202-
202+
203203
> [!NOTE]
204204
> This command creates a `.vscode/mcp.json` file in the current directory. We
205205
> recommend you add it to your `.gitignore` file.
@@ -208,7 +208,7 @@ You can interact with all your installed MCP servers in VS Code:
208208
{{</tabs >}}
209209

210210
1. In Visual Studio Code, open a new Chat and select the **Agent** mode:
211-
211+
212212
![Copilot mode switching](./images/copilot-mode.png)
213213

214214
1. You can also check the available MCP tools:
@@ -224,11 +224,15 @@ You can connect the MCP Toolkit to your development workflow via
224224
OAuth integration. For now, the MCP Toolkit only supports GitHub OAuth.
225225

226226
1. On https://github.com/, ensure you are signed in.
227-
1. In Docker Desktop, select **MCP Toolkit** and select the **OAuth** tab.
227+
1. In Docker Desktop, select **MCP Toolkit** and select the **OAuth** tab.
228228
1. In the GitHub entry, select **Authorize**. Your browser opens the GitHub authorization page.
229229
1. In the GitHub authorization page, select **Authorize Docker**. Once the authorization
230230
is successful, you are automatically redirected to Docker Desktop.
231231
1. Install the **GitHub Official** MCP server, see [Install an MCP server](#install-an-mcp-server).
232232

233233
The MCP Toolkit now has access to your GitHub account. To revoke access, select **Revoke** in the **OAuth** tab.
234234
See an example in [Use the **GitHub Official** MCP server](#example-use-the-github-official-mcp-server).
235+
236+
## Related pages
237+
238+
- [Open-source MCP Gateway](/manuals/ai/mcp-gateway/_index.md)

0 commit comments

Comments
 (0)