Skip to content
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/prompts/freshness-tier1.prompt.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,6 @@ how fresh and up to date it is. Apply the following:
5. Ensure all the components formatted correctly.
6. Improve the SEO keywords.
7. If you find numbered lists, make sure their numbering only uses 1's.
8. Ensure each line is limited to 80 characters.

Do your best and don't be lazy.
1 change: 1 addition & 0 deletions .github/prompts/freshness-tier2.prompt.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,6 @@ how fresh and up to date it is. Apply the following:
5. Try to add some helpful next steps to the end of the document, but only if there are no *Next steps* or *Related pages* section, already.
6. Try to clarify, shorten or improve the efficiency of some sentences.
7. Check for LLM readibility.
8. Ensure each line is limited to 80 characters.

Do your best and don't be lazy.
100 changes: 47 additions & 53 deletions content/manuals/ai/gordon/_index.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
---
title: Ask Gordon
description: Learn how to streamline your workflow with Docker's AI-powered assistant.
description: Streamline your workflow with Docker's AI-powered assistant in Docker Desktop and CLI.
weight: 10
params:
sidebar:
badge:
color: blue
text: Beta
group: AI
aliases:
aliases:
- /desktop/features/gordon/
---

Expand Down Expand Up @@ -37,16 +37,15 @@ Ask Gordon is not enabled by default, and is not
production-ready. You may also encounter the term "Docker AI" as a broader
reference to this technology.

> [!NOTE]
> [!NOTE]
>
> Ask Gordon is powered by Large Language Models (LLMs). Like all
> LLM-based tools, its responses may sometimes be inaccurate. Always verify the
> information provided.

### What data does Gordon access?

When you use Ask Gordon, the data it accesses depends on the context of your
query:
When you use Ask Gordon, the data it accesses depends on your query:

- Local files: If you use the `docker ai` command, Ask Gordon can access files
and directories in the current working directory where the command is
Expand All @@ -57,19 +56,18 @@ query:
registry.

To provide accurate responses, Ask Gordon may send relevant files, directories,
or image metadata to the Gordon backend along with your query. This data
transfer occurs over the network but is never stored persistently or shared with
third parties. It is used exclusively to process your request and formulate a
response. For more information about privacy terms and conditions for Docker AI,
review [Gordon's Supplemental
Terms](https://www.docker.com/legal/docker-ai-supplemental-terms/).
or image metadata to the Gordon backend with your query. This data transfer
occurs over the network but is never stored persistently or shared with third
parties. It is used only to process your request and formulate a response. For
details about privacy terms and conditions for Docker AI, review [Gordon's
Supplemental Terms](https://www.docker.com/legal/docker-ai-supplemental-terms/).

All data transferred is encrypted in transit.

### How your data is collected and used

Docker collects anonymized data from your interactions with Ask Gordon to
enhance the service. This includes the following:
improve the service. This includes:

- Your queries: Questions you ask Gordon.
- Responses: Answers provided by Gordon.
Expand All @@ -81,45 +79,44 @@ To ensure privacy and security:
- Docker does not use this data to train AI models or share it with third
parties.

By using Ask Gordon, you help improve Docker AI's reliability and accuracy,
making it more effective for all users.
By using Ask Gordon, you help improve Docker AI's reliability and accuracy for
everyone.

If you have concerns about data collection or usage, you can
[disable](#disable-ask-gordon) the feature at any time.

## Enable Ask Gordon

1. Sign in to your Docker account.
2. Navigate to the **Beta features** tab in settings.
3. Check the **Enable Docker AI** checkbox.
1. Go to the **Beta features** tab in settings.
1. Check the **Enable Docker AI** checkbox.

The Docker AI terms of service agreement is displayed. You must agree to the
terms before you can enable the feature. Review the terms and select **Accept
and enable** to continue.
The Docker AI terms of service agreement appears. You must agree to the terms
before you can enable the feature. Review the terms and select **Accept and
enable** to continue.

4. Select **Apply**.
1. Select **Apply**.

> [!IMPORTANT]
>
> For Docker Desktop versions 4.41 and earlier, this settings lived under the **Experimental features** tab on the **Features in development** page.
> For Docker Desktop versions 4.41 and earlier, this setting is under the
> **Experimental features** tab on the **Features in development** page.

## Using Ask Gordon

You can access Gordon:

- In Docker Desktop, in the **Ask Gordon** view.
- Via the Docker CLI, with the `docker ai` CLI command.
- In the Docker CLI, with the `docker ai` command.

Once you've enabled the Docker AI features, you'll also find references to **Ask
Gordon** in various other places throughout the Docker Desktop user interface.
Whenever you encounter a button with the **Sparkles** (✨) icon in the user
interface, you can use the button to get contextual support from Ask Gordon.
After you enable Docker AI features, you will also see **Ask Gordon** in other
places in Docker Desktop. Whenever you see a button with the **Sparkles** (✨)
icon, you can use it to get contextual support from Ask Gordon.

## Example workflows

Ask Gordon is a general-purpose AI assistant created to help you with all your
Docker-related tasks and workflows. If you need some inspiration, here are a few
ways things you can try:
Ask Gordon is a general-purpose AI assistant for Docker tasks and workflows. Here
are some things you can try:

- [Troubleshoot a crashed container](#troubleshoot-a-crashed-container)
- [Get help with running a container](#get-help-with-running-a-container)
Expand All @@ -134,9 +131,9 @@ $ docker ai "What can you do?"

### Troubleshoot a crashed container

If you try to start a container with an invalid configuration or command, you
can use Ask Gordon to troubleshoot the error. For example, try starting a
Postgres container without specifying a database password:
If you start a container with an invalid configuration or command, use Ask Gordon
to troubleshoot the error. For example, try starting a Postgres container without
a database password:

```console
$ docker run postgres
Expand All @@ -156,17 +153,16 @@ container's name, or inspect the container and open the **Ask Gordon** tab.

### Get help with running a container

If you want to run a specific image but you're not sure how, Gordon might be
able to help you get set up:
If you want to run a specific image but are not sure how, Gordon can help you get
set up:

1. Pull an image from Docker Hub (for example, `postgres`).
2. Open the **Images** view in Docker Desktop and select the image.
3. Select the **Run** button.
1. Open the **Images** view in Docker Desktop and select the image.
1. Select the **Run** button.

In the **Run a new container** dialog, you should see a message about
**Ask Gordon**.
In the **Run a new container** dialog, you see a message about **Ask Gordon**.

![Ask Gordon hint in Docker Desktop](../../images/gordon-run-ctr.png)
![Screenshot showing Ask Gordon hint in Docker Desktop.](../../images/gordon-run-ctr.png)

The linked text in the hint is a suggested prompt to start a conversation with
Ask Gordon.
Expand All @@ -176,13 +172,13 @@ Ask Gordon.
Gordon can analyze your Dockerfile and suggest improvements. To have Gordon
evaluate your Dockerfile using the `docker ai` command:

1. Navigate to your project directory:
1. Go to your project directory:

```console
$ cd path/to/my/project
$ cd <path-to-your-project>
```

2. Use the `docker ai` command to rate your Dockerfile:
1. Use the `docker ai` command to rate your Dockerfile:

```console
$ docker ai rate my Dockerfile
Expand All @@ -202,8 +198,8 @@ across several dimensions:

### Migrate a Dockerfile to DHI

Migrating your Dockerfile to use [Docker Hardened Images](/manuals/dhi/_index.md) helps you build
more secure, minimal, and production-ready containers. DHIs are designed to
Migrating your Dockerfile to use [Docker Hardened Images](/manuals/dhi/_index.md)
helps you build more secure, minimal, and production-ready containers. DHIs
reduce vulnerabilities, enforce best practices, and simplify compliance, making
them a strong foundation for secure software supply chains.

Expand All @@ -218,16 +214,15 @@ To request Gordon's help for the migration:
If you've enabled Ask Gordon and you want to disable it again:

1. Open the **Settings** view in Docker Desktop.
2. Navigate to **Beta features**.
3. Clear the **Enable Docker AI** checkbox.
4. Select **Apply**.
1. Go to **Beta features**.
1. Clear the **Enable Docker AI** checkbox.
1. Select **Apply**.

### For organizations

If you want to disable Ask Gordon for your entire Docker organization, using
[Settings
Management](/manuals/enterprise/security/hardened-desktop/settings-management/_index.md),
add the following property to your `admin-settings.json` file:
To disable Ask Gordon for your entire Docker organization, use [Settings
Management](/manuals/enterprise/security/hardened-desktop/settings-management/_index.md)
and add this property to your `admin-settings.json` file:

```json
{
Expand All @@ -238,8 +233,7 @@ add the following property to your `admin-settings.json` file:
}
```

Alternatively, you can disable all Beta features by setting `allowBetaFeatures`
to false:
Or disable all Beta features by setting `allowBetaFeatures` to false:

```json
{
Expand Down
22 changes: 10 additions & 12 deletions content/manuals/ai/gordon/mcp/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: MCP
description: Learn how to use MCP servers with Gordon
keywords: ai, mcp, gordon, docker desktop, docker, llm,
title: Model Context Protocol (MCP)
description: Learn how to use Model Context Protocol (MCP) servers with Gordon to extend AI capabilities in Docker Desktop.
keywords: ai, mcp, gordon, docker desktop, docker, llm, model context protocol
grid:
- title: Built-in tools
description: Use the built-in tools.
Expand All @@ -15,16 +15,14 @@ aliases:
- /desktop/features/gordon/mcp/
---

## What is MCP?

[Model Context Protocol](https://modelcontextprotocol.io/introduction) (MCP) is
an open protocol that standardizes how applications provide context and extra
functionality to large language models. MCP functions as a client-server
protocol, where the client, for example an application like Gordon, sends
requests, and the server processes those requests to deliver the necessary
context to the AI. This context may be gathered by the MCP server by executing
some code to perform an action and getting the result of the action, calling
external APIs, etc.
an open protocol that standardizes how applications provide context and
additional functionality to large language models. MCP functions as a
client-server protocol, where the client, for example an application like
Gordon, sends requests, and the server processes those requests to deliver the
necessary context to the AI. This context may be gathered by the MCP server by
executing code to perform an action and retrieving the result, calling external
APIs, or other similar operations.

Gordon, along with other MCP clients like Claude Desktop or Cursor, can interact
with MCP servers running as containers.
Expand Down
Loading