詢問 Gordon

可用性: Beta
要求: Docker Desktop 4.38.0 或更高版本

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

  1. 登入你的 Docker 賬戶。

  2. 導航到設定中的正在開發中的功能選項卡。

  3. 實驗性功能選項卡下,選擇訪問實驗性功能

  4. 選擇應用並重啟

  5. 退出並重新開啟 Docker Desktop 以確保更改生效。

  6. 在 Docker Desktop 中開啟設定檢視。

  7. 導航到正在開發中的功能

  8. Beta選項卡中,勾選啟用 Docker AI 複選框。

    將顯示 Docker AI 服務條款協議。必須同意條款才能啟用此功能。檢視條款並選擇接受並啟用以繼續。

  9. 選擇應用並重啟

使用 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://postgres.tw/docs/current/auth-trust.html

在 Docker Desktop 的容器檢視中,選擇容器名稱旁邊的 ✨ 圖示,或檢查容器並開啟 Ask Gordon 選項卡。

獲取執行容器的幫助

如果你想執行特定映象但不確定如何操作,Gordon 可能會幫助你進行設定:

  1. 從 Docker Hub 拉取一個映象(例如,postgres)。
  2. 在 Docker Desktop 中開啟映象檢視並選擇該映象。
  3. 選擇執行按鈕。

執行新容器對話方塊中,你應該會看到一條關於 Ask Gordon 的訊息。

Ask Gordon hint in Docker Desktop

提示中的連結文字是開始與 Ask Gordon 對話的建議提示。

改進 Dockerfile

Gordon 可以分析你的 Dockerfile 並提出改進建議。要使用 docker ai 命令讓 Gordon 評估你的 Dockerfile:

  1. 導航到你的專案目錄

    $ cd path/to/my/project
    
  2. 使用 docker ai 命令評估你的 Dockerfile

    $ docker ai rate my Dockerfile
    

Gordon 將分析你的 Dockerfile 並識別可以在以下幾個方面改進的機會:

  • 構建快取最佳化
  • 安全
  • 映象大小效率
  • 最佳實踐合規性
  • 可維護性
  • 可重現性
  • 可移植性
  • 資源效率

停用 Ask Gordon

面向個人使用者

如果你已啟用 Ask Gordon 並想再次停用它:

  1. 在 Docker Desktop 中開啟設定檢視。
  2. 導航到正在開發中的功能
  3. 取消勾選啟用 Docker AI 複選框。
  4. 選擇應用並重啟

面向組織

如果你想透過設定管理為整個 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 訪問。

頁面選項