2.1 三大系统安装 Docker


2.1 三大系统安装 Docker

本节摘要:本章上岗流程的第一步——领装备。本节按 Windows、macOS、Linux 三条路线给出安装方法、验证手段与高频安装坑,目标是让引擎对你的第一条命令给出回音。

装不上,多半不是手气问题

上岗第一步是领装备。安装 Docker 本身不难,难的是装完之后"看起来装好了、用起来没反应"——这类问题十个里有八个出在底层条件没满足:虚拟化没开、系统版本太旧、权限组没加。所以本节先讲每条路线的前置条件,再给安装步骤,最后统一用同一套验证手段收尾。确认条件先行,能避开新手期最磨人的一批弯路。

一条通用判断先放在这里:Windows 与 macOS 走 Docker Desktop 桌面版,它把引擎、命令行、图形界面打成一揽子安装包;Linux 走 Docker Engine 引擎版,直接装系统服务,不套桌面外壳。服务器场景一律推荐引擎版——没有人在服务器上看图形界面。

Windows 路线

前置条件优先核对三件事:系统版本(Win10 64 位较新版本或 Win11)、CPU 虚拟化已在固件层开启(任务管理器性能页能看到"虚拟化:已启用")、所需的 Windows 功能(WSL 相关组件)已就位。Windows 家庭版与新版本系统配合 WSL 后端即可运行,不再像早年那样强制要求专业版。

安装流程:

1. 获取 Docker Desktop 安装包(官网下载页选择 Windows 版本) 2. 运行安装程序,勾选"Use WSL 2 instead of Hyper-V"(推荐,资源占用更低) 3. 安装完成后重启系统 4. 启动 Docker Desktop,等待右下角图标变为稳定状态(引擎就绪)

家庭版用户注意:如果安装时提示缺少 WSL 组件,用管理员权限打开 PowerShell 执行以下命令后重启:

# 启用 WSL 与虚拟机平台组件(管理员 PowerShell) dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart # 重启后更新 WSL 内核 wsl --update

经典坑:新装机器常在固件层关闭了虚拟化,任何软件手段都绕不过——必须进 BIOS/UEFI 把 Intel VT-x 或 AMD-V 打开。症状是 Docker Desktop 启动后一直卡在初始化,或明确报"虚拟化未启用"。

macOS 路线

macOS 是三条路线里最省心的:确认系统版本满足 Desktop 要求,按芯片选对安装包(Apple 芯片与 Intel 芯片各一个版本),拖进应用程序文件夹启动即可。

# 苹果芯片机器上确认芯片类型与系统版本 uname -m # 输出 arm64 即 Apple 芯片,x86_64 即 Intel 芯片 sw_vers # 查看系统版本号,对照 Docker Desktop 的系统要求

必须知道的取舍:macOS 的内核不是 Linux,Docker 在 macOS 上实际是在一台轻量虚拟机里跑 Linux 引擎。这带来两个实际影响——其一,性能略低于原生 Linux,尤其文件挂载的读写速度;其二,本教程 1.2 节"容器与宿主机共享内核"的实验在 macOS 上看到的内核版本是虚拟机的,不是 macOS 的。这不影响学习,但你要知道底下有这一层。

Linux 路线

服务器主力路线。以最主流的 Debian/Ubuntu 系为例,推荐用官方仓库安装(系统自带源里的 docker.io 往往版本滞后):

# 卸载旧版冲突包(若有) sudo apt remove -y docker docker-engine docker.io containerd runc 2>/dev/null # 安装依赖并添加官方仓库密钥与源 sudo apt update sudo apt install -y ca-certificates curl gnupg sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \ sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg echo "deb [arch=$(dpkg --print-architecture) \ signed-by=/etc/apt/keyrings/docker.gpg] \ https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null # 安装引擎三件套 sudo apt update sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

装完立刻做两件配置。第一件,把当前用户加入 docker 组,免除每条命令都要 sudo 的烦恼:

# 加入 docker 组并重新登录生效 sudo usermod -aG docker $USER # 注销后重新登录,验证免提权 docker ps

第二件,确认服务开机自启:

# 设置开机自启并查看服务状态 sudo systemctl enable --now docker systemctl status docker --no-pager # 输出示例:Active: active (running) 即引擎在岗

经典坑:忘记加用户组的人会反复遇到权限拒绝(permission denied),误以为安装失败;还有人在内网机器上没配镜像加速,导致拉取公共镜像超时——后者在第 2.3 节讲堆场时会给出配置方法。

统一验收:让引擎给出回音

三条路线装完,用同一套动作验收。第一问,引擎在不在线:

# 客户端与服务端版本,两段都有输出才算通 docker version

第二问,货道通不通(完整跑一遍 1.1 节的首航):

# 端到端验证:拉镜像、起容器、收输出 docker run --rm hello-world # 看到 "Hello from Docker!" 即全链路正常 # --rm 参数含义:容器退出后自动清理,不留残余(第 4 章细讲)

第三问,家底厚不厚:

# 引擎概况:容器数、镜像数、存储驱动、操作系统 docker info # 关注 Server 一段的 Containers / Images / Operating System 字段

三问都有正常回音,装备就算领齐了。假如第一问就报 "Cannot connect to the Docker daemon",回到 1.4 节的结论:对讲机没坏,是中控不在线——检查 Docker Desktop 是否启动、Linux 的 docker 服务是否运行。

本节要点回顾

  • Windows 与 macOS 用桌面版,Linux 服务器用引擎版;先核对虚拟化与系统版本等前置条件再动手。
  • Windows 家庭版通过 WSL 后端即可运行;固件层虚拟化开关是最常见的隐形拦路虎。
  • macOS 底层经轻量虚拟机运行 Linux 引擎,性能与内核版本实验的表现都受此影响。
  • Linux 装完两件事:用户加入 docker 组、服务设为开机自启。
  • 统一验收三问:version 有回音、hello-world 全链路跑通、info 家底清晰。

装备到手,下一步熟悉操作规程——命令行的结构、参数与查手册的手法,下一节让你"会查"而不是"死记"。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U