在 Linux 上安装 Docker 桌面
Docker 桌面术语
Docker Desktop 在大型企业(超过 250 名员工或年收入超过 1000 万美元)的商业使用需要 付费订阅。
此页面包含有关一般系统要求、支持的平台以及有关如何安装适用于 Linux 的 Docker Desktop 的说明的信息。
重要的
Linux 上的 Docker Desktop 运行虚拟机 (VM),该虚拟机
desktop-linux
在启动时创建并使用自定义 Docker 上下文。这意味着部署在 Linux Docker Engine 上(安装之前)的映像和容器在 Docker Desktop for Linux 中不可用。
有关更多信息,请参阅 Docker Desktop for Linux 和 Docker Engine 之间有什么区别。
重要的
对于大型企业(员工超过 250 名或年收入超过 1000 万美元)通过 Docker Desktop 获得 Docker Engine 的商业用途, 需要付费订阅。
Docker Desktop for Linux 提供了用户友好的图形界面,简化了容器和服务的管理。它包括 Docker Engine,因为这是为 Docker 容器提供支持的核心技术。适用于 Linux 的 Docker Desktop 还附带其他功能,例如 Docker Scout 和 Docker Extensions。
安装 Docker 桌面和 Docker 引擎
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 引擎,以防止 Docker 引擎消耗资源并防止如上所述的冲突。
使用以下命令停止 Docker Engine 服务:
$ sudo systemctl stop docker docker.socket containerd
根据您的安装情况,Docker 引擎可能会配置为在您的计算机启动时作为系统服务自动启动。使用以下命令禁用 Docker Engine 服务,并阻止其自动启动:
$ sudo systemctl disable docker docker.socket containerd
在 Docker Desktop 和 Docker Engine 之间切换
Docker CLI 可用于与多个 Docker 引擎交互。例如,您可以使用相同的 Docker CLI 来控制本地 Docker Engine 和控制在云中运行的远程 Docker Engine 实例。 Docker 上下文 允许您在 Docker 引擎实例之间切换。
安装 Docker Desktop 时,会创建一个专用的“desktop-linux”上下文来与 Docker Desktop 交互。启动时,Docker Desktop 会自动将其自己的上下文 ( desktop-linux
) 设置为当前上下文。这意味着后续的 Docker CLI 命令以 Docker Desktop 为目标。关闭时,Docker Desktop 会将当前上下文重置为上下文default
。
使用该docker context ls
命令查看您的计算机上可用的上下文。当前上下文用星号 ( ) 表示*
;
$ docker context ls
NAME DESCRIPTION DOCKER ENDPOINT ...
default * Current DOCKER_HOST based configuration unix:///var/run/docker.sock ...
desktop-linux unix:///home/<user>/.docker/desktop/docker.sock ...
如果您在同一台计算机上安装了 Docker Desktop 和 Docker Engine,则可以运行该docker context use
命令在 Docker Desktop 和 Docker Engine 上下文之间切换。例如,使用“默认”上下文与 Docker 引擎交互:
$ docker context use default
default
Current context is now "default"
并使用desktop-linux
上下文与 Docker Desktop 进行交互:
$ docker context use desktop-linux
desktop-linux
Current context is now "desktop-linux"
有关更多详细信息,请参阅 Docker 上下文文档。
支持的平台
Docker 提供以下 Linux 发行版和架构的软件包.deb
:.rpm
平台 | x86_64 / amd64 |
---|---|
乌班图 | ✅ |
德班 | ✅ |
红帽企业 Linux (RHEL) | ✅ |
软呢帽 | ✅ |
实验性软件包可用于 基于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 扩展。例如, 应用程序指示器。
- 至少 4 GB RAM。
- 启用在用户命名空间中配置 ID 映射,请参阅 文件共享。
- 建议:
初始化
pass
凭据管理。
适用于 Linux 的 Docker Desktop 运行虚拟机 (VM)。有关原因的更多信息,请参阅 为什么 Docker Desktop for Linux 运行 VM。
笔记
Docker 不支持在嵌套虚拟化场景中运行 Docker Desktop for Linux。我们建议您在受支持的发行版上本地运行 Docker Desktop for Linux。
KVM虚拟化支持
Docker Desktop 运行需要KVM 支持的 VM 。
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
注销并重新登录,以便重新评估您的群组成员身份。
通用安装步骤
重要的
确保您满足前面概述的系统要求并遵循发行版特定的先决条件。
下载适合您的 Linux 发行版的正确软件包并使用相应的软件包管理器进行安装。
- 在 Ubuntu 上安装
- 在 Debian 上安装
- 在 Red Hat Enterprise Linux (RHEL) 上安装
- 在 Fedora 上安装
- 在 Arch 上安装
默认情况下,Docker Desktop 安装在
/opt/docker-desktop
.
在 Gnome/KDE 桌面中打开应用程序菜单并搜索Docker Desktop。
选择Docker Desktop以启动 Docker。
Docker 菜单 () 显示 Docker 订阅服务协议。
选择接受继续。 Docker Desktop 在您接受条款后启动。
请注意,如果您不同意这些条款,Docker Desktop 将不会运行。您可以选择稍后打开 Docker Desktop 接受这些条款。
更多信息请参见 Docker Desktop 订阅服务协议。我们建议您还阅读 常见问题解答。
下一步go哪里
- 探索 Docker 的核心订阅,了解 Docker 可以为您提供什么。
- 开始使用 Docker。
- 探索 Docker Desktop及其所有功能。
- 故障排除描述了常见问题、解决方法、如何运行和提交诊断以及提交问题。
- 常见问题解答提供了常见问题的答案。
- 发行说明列出了与 Docker Desktop 版本相关的组件更新、新功能和改进。
- 备份和恢复数据提供了有关备份和恢复与 Docker 相关的数据的说明。