在Linux上安装Docker Desktop

Docker Desktop 条款

在大型企业(员工超过250人或年收入超过1000万美元)中商业使用Docker Desktop需要付费订阅

本页面包含有关一般系统要求、支持的平台以及如何安装适用于Linux的Docker Desktop的说明。

重要

Docker Desktop 在 Linux 上运行一个虚拟机(VM),该虚拟机在启动时创建并使用一个自定义的 Docker 上下文 desktop-linux

这意味着在 Linux Docker Engine 上部署的镜像和容器(在安装之前)在 Docker Desktop for Linux 中不可用。

重要

对于通过 Docker Desktop 在大企业(超过 250 名员工或年收入超过 1000 万美元)中获得的 Docker Engine 的商业使用,需要 付费订阅

Docker Desktop for Linux 提供了一个用户友好的图形界面,简化了容器和服务的管理。它包括 Docker Engine,因为这是支持 Docker 容器的核心技术。Docker Desktop for Linux 还附带了一些额外的功能,如 Docker Scout 和 Docker Extensions。

安装 Docker Desktop 和 Docker Engine

Docker Desktop for Linux 和 Docker Engine 可以在同一台机器上并排安装。Docker Desktop for Linux 将容器和镜像存储在虚拟机内的隔离存储位置,并提供控制以限制 其资源。使用专用的存储位置可以防止 Docker Desktop 干扰同一台机器上的 Docker Engine 安装。

虽然可以同时运行 Docker Desktop 和 Docker Engine,但在某些情况下,同时运行两者可能会导致问题。例如,在为容器映射网络端口(-p / --publish)时,Docker Desktop 和 Docker Engine 可能会尝试在您的机器上保留相同的端口,这可能会导致冲突(“端口已被使用”)。

我们通常建议在使用 Docker Desktop 时停止 Docker Engine,以防止 Docker Engine 消耗资源并防止上述冲突。

使用以下命令停止 Docker Engine 服务:

$ sudo systemctl stop docker docker.socket containerd

根据您的安装情况,Docker Engine 可能会配置为在机器启动时自动启动为系统服务。使用以下命令禁用 Docker Engine 服务,并防止其自动启动:

$ sudo systemctl disable docker docker.socket containerd

在 Docker Desktop 和 Docker Engine 之间切换

Docker CLI 可用于与多个 Docker Engine 交互。例如,您可以使用相同的 Docker CLI 来控制本地 Docker Engine 和控制运行在云中的远程 Docker Engine 实例。 Docker 上下文 允许您在 Docker Engine 实例之间切换。

安装 Docker Desktop 时,会创建一个专用的 "desktop-linux" 上下文以与 Docker Desktop 交互。启动时,Docker Desktop 会自动将其自己的上下文(desktop-linux)设置为当前上下文。这意味着后续的 Docker CLI 命令将针对 Docker Desktop。关闭时,Docker Desktop 会将当前上下文重置为 default 上下文。

使用 docker context ls 命令查看您的机器上可用的上下文。当前上下文用星号(*)表示;

支持的平台

Docker 提供以下 Linux 发行版和架构的 .deb.rpm 包:

Platformx86_64 / amd64
Ubuntu
Debian
红帽企业版 Linux (RHEL)
Fedora

一个实验性的软件包可用于基于Arch的发行版。Docker尚未测试或验证此安装。

Docker 支持在上述发行版的当前 LTS 版本和最新版本上运行 Docker Desktop。随着新版本的发布,Docker 将停止支持最旧的版本,并支持最新的版本。

一般系统要求

要成功安装Docker Desktop,您的Linux主机必须满足以下一般要求:

  • 64位内核和CPU支持虚拟化。
  • KVM虚拟化支持。按照 KVM虚拟化支持说明 检查KVM内核模块是否已启用以及如何提供对KVM设备的访问。
  • QEMU 必须是 5.2 或更高版本。我们建议升级到最新版本。
  • systemd 初始化系统。
  • Gnome、KDE 或 MATE 桌面环境。
    • 对于许多 Linux 发行版,Gnome 环境不支持托盘图标。要添加对托盘图标的支持,您需要安装一个 Gnome 扩展。例如, AppIndicator
  • 至少4 GB的内存。
  • 启用用户命名空间中的ID映射配置,请参阅 文件共享。请注意,对于Docker Desktop 4.35及更高版本,不再需要此操作。
  • 推荐: 初始化 pass 用于凭证管理。

Docker Desktop for Linux 运行一个虚拟机(VM)。有关原因的更多信息,请参阅 为什么 Docker Desktop for Linux 运行一个 VM

注意

Docker 不支持在嵌套虚拟化场景中运行 Docker Desktop for Linux。我们建议您在支持的发行版上原生运行 Docker Desktop for Linux。

KVM虚拟化支持

Docker Desktop 运行一个需要 KVM 支持的虚拟机。

如果主机支持虚拟化,kvm模块应该会自动加载。要手动加载模块,请运行:

$ modprobe kvm

根据主机的处理器,必须加载相应的模块:

$ modprobe kvm_intel  # Intel processors

$ modprobe kvm_amd    # AMD processors

如果上述命令失败,您可以通过运行以下命令查看诊断信息:

$ kvm-ok

要检查是否启用了KVM模块,请运行:

$ lsmod | grep kvm
kvm_amd               167936  0
ccp                   126976  1 kvm_amd
kvm                  1089536  1 kvm_amd
irqbypass              16384  1 kvm

设置KVM设备用户权限

要检查/dev/kvm的所有权,请运行:

$ ls -al /dev/kvm

将您的用户添加到kvm组以便访问kvm设备:

$ sudo usermod -aG kvm $USER

注销并重新登录,以便重新评估您的组成员资格。

下一步去哪里