參加你附近的 ,瞭解 VS Code 中的 AI 輔助開發。

安裝 Docker 的替代方法

你可以透過以下幾種方式將 Docker 與 開發容器 擴充套件一起使用:

  • 本地安裝 Docker。
  • Docker 安裝在另一臺機器或遠端環境中。
    • 你只需要在遠端主機上安裝 Docker,而不是在本地安裝 Docker。
  • 其他相容 Docker 的 CLI,安裝在本地或遠端環境中。
    • 例如,Rancher Desktop 是另一種安裝 Docker 的方式,它在 Windows、macOS 和 Linux 上提供容器管理和 Kubernetes。
      • 由於 Rancher Desktop 透過 Moby 支援 Docker CLI,因此你可以將開發容器擴充套件與它一起使用。你可以在 Rancher Desktop 的指南中瞭解如何開始。
    • 開發容器與 CLI 互動;它不對容器引擎的工作方式做任何假設,也不直接與容器引擎或守護程序互動。
    • 請注意,其他相容 Docker 的 CLI 不受官方支援。

繼續閱讀以瞭解安裝和使用 Docker 或相容 Docker 的 CLI 的替代方法。

Windows:適用於 Linux 的 Windows 子系統 (WSL)

在 Windows 上,你可以透過 WSL 擴充套件使用安裝在 WSL 中的 Docker。你可以參考 Docker 文件以瞭解如何在 Linux 上安裝 Docker,其中包含每個發行版的具體資訊

一個問題是由於缺少 systemd 或任何其他系統守護程序,dockerd 守護程序不會自動啟動。在 WSL 版本 0.67.6 及更高版本 (wsl --version) 中,你可以啟用 systemd 的支援。對於較舊的 WSL 版本,你可以使用 Distrod 來建立或更新現有包含 systemd 的 WSL 發行版。

macOS:Colima

Colima 在 macOS 上提供容器執行時。建議使用 Colima v0.2.2 或更高版本,以便 VS Code 能夠正確檢視透過 Colima 執行的容器。

Colima 自動設定一個 colima Docker 上下文並使其成為活動上下文。你可能還需要在執行 colima start 之前安裝 dockerdocker-compose CLI,以使此設定正常工作。

注意:Colima 使用 Alpine Linux,它不受遠端 - SSH 支援。

Podman

Podman 版本 5+ 大部分相容 Docker 的 CLI 命令。要使用 Podman,請在 Linux、Windows 或 macOS 上將Docker 路徑 (dev.containers.dockerPath) 設定更新為 podman

Docker Path setting

Podman 也有一個 podman compose 命令,但這需要一個 compose 提供程式,可以是 Docker Compose 或 Podman Compose

Linux

如果你的本地機器上使用 Linux,或者已經有一臺可以透過 SSH 訪問的遠端 Linux 機器,你可以參考 Docker 文件以瞭解如何在 Linux 上安裝 Docker,其中包含每個發行版的具體資訊

Cloud-Init VM

你可以將 遠端 - SSH 擴充套件與開發容器一起使用。這使你可以在遠端機器(例如 Linux VM)上安裝 Docker。

你可以使用 Cloud-Init 檔案(行業標準)自動在 VM 上安裝 Docker。例如,你可以透過 Azure CLI 建立 Azure VM,並將其設定為在建立過程中使用 cloud-init.txt

cloud-init.txt 檔案

#cloud-config

apt:
  sources:
    docker.list:
      source: deb [arch=amd64] https://download.docker.com/linux/ubuntu $RELEASE stable
      keyid: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88

packages:
  - docker-ce
  - docker-ce-cli

groups:
  - docker

system_info:
  default_user:
    groups: [docker]

以下是 Azure CLI 命令的示例。請務必將 <location-here> 更新為離你最近的資料中心(例如,eastuswesteurope

az login

az group create --name dev-server --location <location-here>

az vm create \
  --resource-group dev-server \
  --name dev-server \
  --image Canonical:0001-com-ubuntu-server-impish:21_10-gen2:latest \
  --custom-data cloud-init.txt \
  --generate-ssh-keys

你可以在在遠端 Docker 主機上開發文件中瞭解有關將遠端 - SSH 與開發容器一起使用的更多資訊。

其他容器引擎

你可以透過 vscode-remote-release 儲存庫開啟或檢視對其他容器引擎的支援請求。你已經可以探索幾個功能請求: