询问 Gordon
Ask Gordon 是嵌入在 Docker Desktop 和 Docker CLI 中的个人 AI 助手。它旨在简化你的工作流程,并帮助你充分利用 Docker 生态系统。
什么是 Ask Gordon?
Ask Gordon 在 Docker 工具中提供 AI 驱动的帮助。它为以下任务提供上下文帮助:
- 改进 Dockerfile
- 运行和故障排除容器
- 与镜像和代码交互
- 查找漏洞或配置问题
它理解你的本地环境,包括源代码、Dockerfile 和镜像,以提供个性化和可操作的指导。
这些功能默认未启用,并且尚未投入生产。你也可能遇到“Docker AI”一词,它是对这项技术的更广泛称呼。
注意
Ask Gordon 由大型语言模型 (LLM) 提供支持。与所有基于 LLM 的工具一样,其响应有时可能不准确。请务必验证提供的信息。
Gordon 访问哪些数据?
使用 Ask Gordon 时,它访问的数据取决于你的查询上下文:
- 本地文件:如果你使用
docker ai
命令,Ask Gordon 可以访问执行命令时当前工作目录中的文件和目录。在 Docker Desktop 中,如果你在 Ask Gordon 视图中询问特定文件或目录,系统会提示你选择相关上下文。 - 本地镜像:Gordon 集成到 Docker Desktop 中,可以查看本地镜像存储中的所有镜像。这包括你构建或从注册表拉取的镜像。
为了提供准确的响应,Ask Gordon 可能会将相关文件、目录或镜像元数据连同你的查询一起发送到 Gordon 后端。此数据传输通过网络进行,但不会永久存储或与第三方共享。它专门用于处理你的请求和生成响应。有关 Docker AI 隐私条款和条件的更多信息,请查阅 Gordon 的补充条款。
所有传输的数据在传输过程中都会加密。
数据如何收集和使用
Docker 会收集你与 Ask Gordon 交互的匿名数据,以增强服务。这包括以下内容:
- 你的查询:你向 Gordon 提出的问题。
- 响应:Gordon 提供的答案。
- 反馈:点赞和点踩评级。
为了确保隐私和安全:
- 数据已匿名化,无法追溯到你或你的账户。
- Docker 不会使用此数据训练 AI 模型或与第三方共享。
使用 Ask Gordon,你可以帮助提高 Docker AI 的可靠性和准确性,使其对所有用户更有效。
如果你对数据收集或使用有疑虑,可以随时禁用该功能。
启用 Ask Gordon
登录你的 Docker 账户。
导航到设置中的正在开发中的功能选项卡。
在实验性功能选项卡下,选择访问实验性功能。
选择应用并重启。
退出并重新打开 Docker Desktop 以确保更改生效。
在 Docker Desktop 中打开设置视图。
导航到正在开发中的功能。
在Beta选项卡中,勾选启用 Docker AI 复选框。
将显示 Docker AI 服务条款协议。必须同意条款才能启用此功能。查看条款并选择接受并启用以继续。
选择应用并重启。
使用 Ask Gordon
Docker AI 功能的主要接口是 Docker Desktop 中的 Ask Gordon 视图,或者如果你倾向于使用 CLI:docker ai
CLI 命令。
启用 Docker AI 功能后,你还会在 Docker Desktop 用户界面的其他各种位置找到对 Ask Gordon 的引用。无论何时在用户界面中遇到带有星标 (✨) 图标的按钮,都可以使用该按钮从 Ask Gordon 获取上下文支持。
示例工作流
Ask Gordon 是一个通用 AI 助手,旨在帮助你完成所有与 Docker 相关的任务和工作流。如果你需要一些灵感,可以尝试以下几种方法:
如需更多示例,请尝试直接询问 Gordon。例如:
$ docker ai "What can you do?"
排除崩溃容器的故障
如果你尝试启动一个配置或命令无效的容器,可以使用 Ask Gordon 排除错误。例如,尝试启动一个未指定数据库密码的 Postgres 容器:
$ docker run postgres
Error: Database is uninitialized and superuser password is not specified.
You must specify POSTGRES_PASSWORD to a non-empty value for the
superuser. For example, "-e POSTGRES_PASSWORD=password" on "docker run".
You may also use "POSTGRES_HOST_AUTH_METHOD=trust" to allow all
connections without a password. This is *not* recommended.
See PostgreSQL documentation about "trust":
https://postgresql.ac.cn/docs/current/auth-trust.html
在 Docker Desktop 的容器视图中,选择容器名称旁边的 ✨ 图标,或检查容器并打开 Ask Gordon 选项卡。
获取运行容器的帮助
如果你想运行特定镜像但不确定如何操作,Gordon 可能会帮助你进行设置:
- 从 Docker Hub 拉取一个镜像(例如,
postgres
)。 - 在 Docker Desktop 中打开镜像视图并选择该镜像。
- 选择运行按钮。
在运行新容器对话框中,你应该会看到一条关于 Ask Gordon 的消息。


提示中的链接文本是开始与 Ask Gordon 对话的建议提示。
改进 Dockerfile
Gordon 可以分析你的 Dockerfile 并提出改进建议。要使用 docker ai
命令让 Gordon 评估你的 Dockerfile:
导航到你的项目目录
$ cd path/to/my/project
使用
docker ai
命令评估你的 Dockerfile$ docker ai rate my Dockerfile
Gordon 将分析你的 Dockerfile 并识别可以在以下几个方面改进的机会:
- 构建缓存优化
- 安全
- 镜像大小效率
- 最佳实践合规性
- 可维护性
- 可重现性
- 可移植性
- 资源效率
禁用 Ask Gordon
面向个人用户
如果你已启用 Ask Gordon 并想再次禁用它:
- 在 Docker Desktop 中打开设置视图。
- 导航到正在开发中的功能。
- 取消勾选启用 Docker AI 复选框。
- 选择应用并重启。
面向组织
如果你想通过设置管理为整个 Docker 组织禁用 Ask Gordon,请将以下属性添加到 admin-settings.json
文件中:
{
"enableDockerAI": {
"value": false,
"locked": true
}
}
或者,通过将 allowBetaFeatures
设置为 false 来禁用所有 Beta 功能:
{
"allowBetaFeatures": {
"value": false,
"locked": true
}
}
反馈
我们重视你对 Ask Gordon 的意见,并鼓励你分享使用体验。你的反馈有助于我们改进 Ask Gordon,使其对所有用户更友好。如果你遇到问题、有建议或只是想分享你的喜好,可以通过以下方式联系我们:
点赞和点踩按钮
使用回复中的点赞或点踩按钮评价 Ask Gordon 的回复。
反馈调查
你可以通过 Docker Desktop 的 Ask Gordon 视图中的提供反馈链接访问 Ask Gordon 调查,或者通过运行
docker ai feedback
命令从 CLI 访问。