1. 概述

Docker 已成为软件开发者和 IT 专业人士构建、发布和运行应用程序的重要工具。它允许开发者将应用程序及其所有依赖打包成一个标准化的单元,称为 容器,这些容器几乎可以在任何基础设施上一致运行,极大地简化了开发和部署流程。

在本教程中,我们将提供一份指南,介绍如何在以下三大操作系统上安装 Docker:

  • Microsoft Windows
  • Linux(以 Ubuntu 22.04 为例)
  • macOS

内容涵盖系统要求、安装步骤以及安装后的配置。

2. 理解 Docker

在开始安装之前,我们先快速了解 Docker 是什么以及它是如何工作的。Docker 基于容器化技术,这是一种轻量级的虚拟化方式。

2.1. 理解容器化

从用户角度来看,容器类似于虚拟机(VM),但更加轻量且高效。与虚拟机不同的是,容器仅包含应用程序代码、库、依赖项和配置文件,无需单独的客户操作系统、Hypervisor 或模拟层。此外,容器共享主机的内核和资源,但彼此之间以及与主机之间保持隔离

容器化使开发者能够创建和运行跨平台、环境一致、可移植且可扩展的应用程序。例如,我们可以在笔记本电脑、云服务器或 Raspberry Pi 上运行同一个容器,而无需担心兼容性问题或性能开销。

2.2. 使用 Docker 的优势

Docker 是目前最流行、最广泛使用的容器化工具之一。它提供了一个平台和一套工具,使得创建、管理和运行容器变得简单。使用 Docker 的主要优势包括:

可移植性:容器化应用可在大多数基础设施上一致运行
隔离性:运行在容器中的应用彼此隔离
可扩展性:通过启动更多容器实例实现水平扩展
快速部署:容器轻量且启动时间通常在秒级以内
一致性:依赖项被打包,避免环境差异带来的问题
协作性:通过 Docker Hub 等注册中心分享镜像
安全性:容器隔离限制对底层系统的访问,防止应用冲突

2.3. Docker 的常见使用场景

Docker 可用于多种用途和场景:

  1. 开发和部署微服务
  2. 将遗留系统容器化以现代化其部署和管理
  3. 持续集成和交付(CI/CD)
  4. 开发云原生应用
  5. 打包和分享应用

接下来我们讨论安装 Docker 的系统要求。

3. 系统要求

在安装 Docker 之前,需确保系统满足最低的硬件和软件要求。

3.1. CPU 要求

Docker 需要支持硬件虚拟化的 64 位处理器

我们可以在不同系统上检查 CPU 是否支持虚拟化:

Windows:

C:\Users\abdul>systeminfo | findstr /I /C:"Virtualization"
                           Virtualization Enabled In Firmware: Yes

Linux:

$ grep -E --color 'vmx|svm' /proc/cpuinfo
  • vmx:表示 Intel VT-x
  • svm:表示 AMD-V

macOS:

% sysctl -a | grep machdep.cpu.features
machdep.cpu.features: FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CLFSH DS AC ... VMX ...

若输出中包含 VMX,则说明支持虚拟化。

3.2. 内存要求

除了 CPU,Docker 至少需要 2GB RAM,但内存越大性能越好。

Windows:

C:\Users\abdul>systeminfo | findstr /I /C:"Total Physical Memory"
Total Physical Memory:     8,084 MB

Linux:

$ free -m
               total        used        free      shared  buff/cache   available
Mem:            7824        4832        1363         455        1628        2240
Swap:           2047        1546         501

查看 Mem: total 行即可。

macOS:

% sysctl -n hw.memsize
8589934592

单位为字节,8589934592 表示 8GB。

3.3. 操作系统兼容性

Windows:

需使用 Windows 10 Home、Pro、Enterprise 或 Education,且版本号 ≥ 19044

可通过以下命令查看版本:

C:\Users\abdul>winver

Linux:

需使用 64 位版本的以下发行版之一

  • Ubuntu
  • Debian
  • Fedora

可通过以下命令查看系统信息:

$ lsb_release -a
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.2 LTS
Release:        22.04
Codename:       jammy

macOS:

Docker Desktop 支持最新版本的 macOS

3.4. 软件依赖

  • Windows:需启用 Hyper-V 或 WSL 2
  • Linux:QEMU ≥ 5.2
  • macOS:通常无需额外依赖

4. Windows 上的 Docker Desktop

Docker Desktop 是一个易于使用的应用程序,允许我们在 Windows 上运行 Docker 容器。它包括两个主要组件:

  • Docker Engine:Docker 的核心组件
  • Docker CLI:命令行接口,用于与 Docker 交互
  • GUI 管理界面:用于管理容器、镜像、网络和卷

4.1. 下载安装包

Docker 官网 下载安装包(约 500MB)。

4.2. 安装步骤

  1. 双击安装包,出现 UAC 提示时点击 Yes
  2. 默认安装路径为:C:\Program Files\Docker\Docker
  3. 出现配置提示窗口,可保留默认选项(如使用 WSL2、创建桌面快捷方式)。
  4. 安装进度条显示安装过程。
  5. 安装完成后提示重启系统。

安装完成后,系统托盘会出现 Docker 图标,打开 Docker Dashboard 界面如下:

Dashboard

你也可以使用命令行安装:

start /w "" "Docker Desktop Installer.exe" install

4.3. 配置与设置

安装完成后,点击 Dashboard 上的 Settings 图标进入设置界面:

Dashboard Settings Icon

主要设置项包括:

  • General:自动启动、统计信息共享、WSL2 启用等
  • Resources:内存、交换空间、磁盘空间分配
  • Kubernetes:启用/禁用 Kubernetes

点击 Apply & Restart 应用更改。

5. Linux 上的 Docker Desktop

我们以 Ubuntu 22.04 为例介绍安装过程。

5.1. 配置 Docker 的软件源

更新系统并安装依赖:

$ sudo apt-get update
$ sudo apt-get install ca-certificates curl

创建 GPG 密钥目录:

$ sudo install -m 0755 -d /etc/apt/keyrings

下载并配置 GPG 密钥:

$ sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
$ sudo chmod a+r /etc/apt/keyrings/docker.asc

添加 Docker 仓库:

$ echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
$ sudo apt-get update

5.2. Docker Engine 与 Docker Desktop

Docker Desktop 包含 Docker Engine,但也可以单独安装 Docker Engine。两者共存时需注意上下文切换:

安装 Docker Engine:

$ sudo apt install docker-ce docker-ce-cli containerd.io

停止 Docker Engine 以避免冲突:

$ sudo systemctl stop docker docker.socket containerd

切换上下文:

$ docker context use default       # 使用 Docker Engine
$ docker context use desktop-linux # 使用 Docker Desktop

5.3. 安装 Docker Desktop

Docker 官网 下载 .deb 安装包(约 300MB):

$ sudo apt-get install ./docker-desktop-4.27.2-amd64.deb

添加当前用户到 docker 组以避免每次使用 sudo

$ sudo usermod -aG docker $USER

退出并重新登录后生效。

初始化 pass 用于安全存储 Docker 凭证:

$ gpg --generate-key
$ pass init <your_gpg_key_id>

完成后即可登录 Docker Desktop。

6. macOS 上的 Docker Desktop

macOS 上的 Docker Desktop 同样包含 Docker Compose,方便多容器应用的管理。

6.1. 下载安装包

根据芯片类型选择对应版本:

安装包为 .dmg 文件,约 600MB。

6.2. 安装步骤

  1. 双击 .dmg 文件,将 Docker 图标拖拽至 Applications 文件夹。
  2. 打开 Docker 应用,出现权限提示时点击 Open
  3. 接受 Docker Subscription Service Agreement。
  4. 选择 Use recommended settings,点击 Finish 完成安装。

安装完成后,Docker 会自动启动并显示 Dashboard。

Finish setup

7. 总结

Docker 是一个强大的工具,使我们能够在本地环境中创建、运行和管理容器。借助 Docker,我们可以更快、更便捷地构建、测试和部署应用程序。

在本文中,我们学习了如何在 Windows、Linux 和 macOS 上安装 Docker,并介绍了其优势和常见使用场景。希望这份指南能为你后续使用 Docker 提供帮助。


原始标题:How to Install Docker on Windows, Linux, and Mac