共计 8576 个字符,预计需要花费 22 分钟才能阅读完成。
文章目录 [显示]
Docker 30 天实战系列 · Day 2

昨天我们了解了 Docker 是什么,相信你已经迫不及待想要开始实践了。
今天,我们就来解决第一个实际问题: 如何在你的电脑上安装 Docker?
无论你用的是 Mac、Windows 还是 Linux,这篇文章都会手把手教你完成安装。跟着操作,10 分钟内你就能在自己的电脑上运行第一个 Docker 容器!
📋 学习目标
你将学会 :
- ✅ 在 Mac/Windows/Linux 上安装 Docker
- ✅ 验证 Docker 安装是否成功
- ✅ 运行第一个 Docker 容器
- ✅ 解决常见的安装问题
难度等级 :⭐☆☆☆☆(零基础友好)
所需时间 :10-15 分钟
前置要求 :
- 一台能联网的电脑
- 基本的命令行操作能力
- 管理员权限(用于安装软件)
准备好了吗?让我们开始!
🖥️ 选择你的平台
根据你的操作系统,选择对应的安装方法:
| 操作系统 | 推荐方式 | 难度 |
|---|---|---|
| 🍎 macOS | Docker Desktop | ⭐⭐☆☆☆ |
| 🪟 Windows | Docker Desktop | ⭐⭐⭐☆☆ |
| 🐧 Linux | 包管理器安装 | ⭐⭐☆☆☆ |
💡 提示 :建议先快速浏览全文,了解整体流程,再根据自己的系统进行安装。
🍎 Mac 安装指南
系统要求
在开始之前,请确认你的 Mac 满足以下要求:
| 项目 | 要求 |
|---|---|
| macOS 版本 | macOS 11 (Big Sur) 或更高 |
| 芯片 | Intel 或 Apple Silicon (M1/M2/M3) |
| 内存 | 至少 4GB RAM(推荐 8GB+) |
| 磁盘空间 | 至少 10GB 可用空间 |
检查你的 Mac 芯片类型 :
# 查看芯片类型
uname -m
# 输出 x86_64 = Intel 芯片
# 输出 arm64 = Apple Silicon (M 系列)
安装步骤
步骤 1:下载 Docker Desktop
方法 1:官网下载(推荐)
- 打开浏览器,访问 Docker Desktop for Mac
- 点击 "Download for Mac" 按钮
- 系统会自动识别你的芯片类型下载对应版本
方法 2:使用 Homebrew
如果你已经安装了 Homebrew:
# Intel 芯片
brew install --cask docker
# Apple Silicon (M 系列)
brew install --cask docker
步骤 2:安装 Docker Desktop
-
打开下载的 DMG 文件
- 文件名类似:
Docker.dmg
- 文件名类似:
-
拖拽安装
- 将 Docker 图标拖到 Applications 文件夹
┌─────────────────────────┐ │ │ │ 🐳 Docker │ │ ↓ │ │ 📁 Applications │ │ │ └─────────────────────────┘ -
首次启动
- 打开 " 应用程序 " 文件夹
- 双击 Docker 图标
- 可能会提示 " 此应用来自互联网 ",点击 " 打开 "
-
授权
- Docker 需要特权访问,输入 Mac 密码授权
步骤 3:等待 Docker 启动
首次启动会:
- 显示欢迎界面
- 接受服务条款(勾选并点击 Accept)
- 可选:登录 Docker Hub(可以跳过)
- 启动 Docker 引擎
启动成功标志 :
- 菜单栏出现 🐳 Docker 图标
- 图标不再动画,显示为静止状态
⏰ 首次启动时间 :约 1-2 分钟
步骤 4:验证安装
打开 终端 (Terminal),运行以下命令:
# 检查 Docker 版本
docker --version
# 预期输出示例
# Docker version 25.0.0, build 1b8d8ff
# 检查 Docker Compose 版本
docker compose version
# 预期输出示例
# Docker Compose version v2.24.0
# 检查 Docker 引擎状态
docker info
# 如果看到大量系统信息输出,说明成功!
✅ 恭喜!Mac 上的 Docker 安装完成!
Mac 常见问题
问题 1:Docker 图标一直显示 "Starting…"
解决方法 :
# 1. 完全退出 Docker Desktop
# 菜单栏点击 Docker 图标 → Quit Docker Desktop
# 2. 重启 Docker Desktop
# 从应用程序文件夹重新打开
# 3. 如果仍然失败,重启 Mac
问题 2:提示 "Docker Desktop requires macOS 11 or newer"
解决方法 :
- 升级 macOS 到 Big Sur (11.0) 或更高版本
- 或下载旧版本的 Docker Desktop(不推荐)
问题 3:Apple Silicon Mac 上容器运行很慢
原因 :某些 x86 镜像在 ARM 架构上通过 Rosetta 2 运行
解决方法 :
- 优先使用支持 ARM64 的镜像
- 例如:使用
nginx:alpine而不是某些只有 x86 版本的镜像
🪟 Windows 安装指南
系统要求
| 项目 | 要求 |
|---|---|
| Windows 版本 | Windows 10 64-bit (Build 19041+) 或 Windows 11 |
| WSL 2 | 需要启用 |
| Hyper-V | 需要启用(部分版本) |
| 内存 | 至少 4GB RAM(推荐 8GB+) |
| 磁盘空间 | 至少 10GB 可用空间 |
检查 Windows 版本 :
# 在 PowerShell 中运行
winver
# 或
[System.Environment]::OSVersion.Version
安装步骤
步骤 1:启用 WSL 2
Docker Desktop 在 Windows 上依赖 WSL 2 (Windows Subsystem for Linux 2)。
自动启用(推荐):
打开 PowerShell(管理员模式),运行:
# 启用 WSL 和虚拟机平台
wsl --install
# 这个命令会自动:# 1. 启用 WSL 功能
# 2. 启用虚拟机平台
# 3. 安装 WSL 2
# 4. 安装 Ubuntu(默认 Linux 发行版)
⏰ 需要重启电脑
重启后,会自动完成 Ubuntu 安装,设置用户名和密码。
验证 WSL 2:
# 检查 WSL 版本
wsl --list --verbose
# 应该看到类似输出
# NAME STATE VERSION
# * Ubuntu Running 2
步骤 2:下载 Docker Desktop
- 访问 Docker Desktop for Windows
- 点击 "Download for Windows" 按钮
- 下载文件:
Docker Desktop Installer.exe(约 500MB)
步骤 3:安装 Docker Desktop
-
运行安装程序
- 双击
Docker Desktop Installer.exe - 如果出现 UAC 提示,点击 " 是 "
- 双击
-
配置选项
- ✅ 勾选 "Use WSL 2 instead of Hyper-V"(推荐)
- ✅ 勾选 "Add shortcut to desktop"(可选)
-
安装过程
- 等待安装完成(约 2-5 分钟)
- 完成后点击 "Close and restart"
-
重启电脑 (重要!)
步骤 4:首次启动
重启后:
- Docker Desktop 会自动启动(或从桌面快捷方式启动)
- 接受服务条款
- 可选:登录 Docker Hub(可跳过)
- 等待 Docker 引擎启动
启动成功标志 :
- 系统托盘出现 🐳 Docker 图标
- 状态显示 "Docker Desktop is running"
步骤 5:验证安装
打开 PowerShell 或 命令提示符 ,运行:
# 检查 Docker 版本
docker --version
# 预期输出
# Docker version 25.0.0, build 1b8d8ff
# 检查 Docker Compose
docker compose version
# 预期输出
# Docker Compose version v2.24.0
# 运行测试容器
docker run hello-world
# 如果看到 "Hello from Docker!" 说明成功!
✅ 恭喜!Windows 上的 Docker 安装完成!
Windows 常见问题
问题 1:WSL 2 安装失败
错误信息 :
WslRegisterDistribution failed with error: 0x80370102
解决方法 :
-
启用虚拟化功能 :
- 进入 BIOS 设置(重启时按 F2/F10/DEL)
- 找到 "Virtualization Technology" 或 "Intel VT-x" / "AMD-V"
- 设置为 Enabled
- 保存并重启
-
启用 Windows 功能 :
# 以管理员身份运行 dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart # 重启电脑
问题 2:Docker Desktop 启动失败
错误信息 :
Docker Desktop failed to start
解决方法 :
-
检查 WSL 2 状态 :
wsl --status wsl --update -
重置 Docker Desktop:
- 右键点击托盘 Docker 图标
- 选择 "Troubleshoot"
- 点击 "Reset to factory defaults"
-
重新安装 :
- 卸载 Docker Desktop
- 删除
%APPDATA%\Docker文件夹 - 重新安装
问题 3:容器无法访问网络
解决方法 :
# 重启 WSL
wsl --shutdown
# 重启 Docker Desktop
🐧 Linux 安装指南
Linux 是 Docker 的原生平台,安装最简单,性能最佳。
Ubuntu/Debian 安装
系统要求
| 项目 | 要求 |
|---|---|
| OS 版本 | Ubuntu 20.04+ / Debian 11+ |
| 架构 | x86_64 / arm64 |
| 内核 | 3.10+ |
安装步骤(官方仓库方式)
步骤 1:卸载旧版本 (如果有)
sudo apt-get remove docker docker-engine docker.io containerd runc
步骤 2:更新系统并安装依赖
# 更新包索引
sudo apt-get update
# 安装依赖包
sudo apt-get install -y \
ca-certificates \
curl \
gnupg \
lsb-release
步骤 3:添加 Docker 官方 GPG 密钥
# 创建密钥目录
sudo install -m 0755 -d /etc/apt/keyrings
# 添加 Docker 官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# 设置权限
sudo chmod a+r /etc/apt/keyrings/docker.gpg
步骤 4:添加 Docker 仓库
# 添加 Docker 仓库到 APT 源
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
步骤 5:安装 Docker Engine
# 更新包索引
sudo apt-get update
# 安装 Docker Engine、CLI 和 Containerd
sudo apt-get install -y \
docker-ce \
docker-ce-cli \
containerd.io \
docker-buildx-plugin \
docker-compose-plugin
⏰ 安装时间 :约 2-3 分钟
步骤 6:启动 Docker 服务
# 启动 Docker
sudo systemctl start docker
# 设置开机自启
sudo systemctl enable docker
# 检查状态
sudo systemctl status docker
# 预期输出:Active: active (running)
步骤 7:验证安装
# 检查版本
docker --version
# 运行测试容器(需要 sudo)sudo docker run hello-world
# 如果看到 "Hello from Docker!" 说明成功!
步骤 8:配置非 root 用户运行(重要!)
默认情况下,Docker 命令需要 sudo,这很不方便。我们可以将当前用户添加到 docker 组:
# 创建 docker 组(通常已存在)sudo groupadd docker
# 将当前用户添加到 docker 组
sudo usermod -aG docker $USER
# 重新加载组权限(重要!)newgrp docker
# 验证:不使用 sudo 运行 Docker
docker run hello-world
# 如果成功,以后就不需要 sudo 了!
⚠️ 如果仍需要 sudo:退出并重新登录系统,或重启电脑。
CentOS/RHEL/Fedora 安装
安装步骤
# 卸载旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
# 安装依赖
sudo yum install -y yum-utils
# 添加 Docker 仓库
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
# 安装 Docker Engine
sudo yum install -y docker-ce docker-ce-cli containerd.io \
docker-buildx-plugin docker-compose-plugin
# 启动 Docker
sudo systemctl start docker
sudo systemctl enable docker
# 验证
sudo docker run hello-world
Linux 常见问题
问题 1:无法连接到 Docker daemon
错误信息 :
Cannot connect to the Docker daemon. Is the docker daemon running?
解决方法 :
# 检查 Docker 服务状态
sudo systemctl status docker
# 如果未运行,启动服务
sudo systemctl start docker
# 如果启动失败,查看日志
sudo journalctl -u docker.service
问题 2:普通用户无法运行 Docker
解决方法 :
# 确认用户在 docker 组中
groups $USER
# 如果没有 docker,添加用户到组
sudo usermod -aG docker $USER
# 重新登录或运行
newgrp docker
问题 3:镜像拉取速度很慢
解决方法 :配置国内镜像加速器(见下一节)
🚀 首次运行测试
无论你使用哪个平台,安装完成后都应该进行完整测试。
测试 1:Hello World
docker run hello-world
预期输出 :
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
...
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
✅ 解析 :
- Docker 本地没有
hello-world镜像 - 自动从 Docker Hub 下载
- 运行容器并显示消息
- 容器执行完毕自动退出
测试 2:运行 Web 服务器
# 运行 Nginx Web 服务器
docker run -d -p 8080:80 --name my-nginx nginx:alpine
# 命令解析:# -d 后台运行
# -p 8080:80 将容器的 80 端口映射到主机的 8080 端口
# --name my-nginx 容器名称
# nginx:alpine 使用 nginx 的 alpine 版本镜像(更小)
验证 :
# 方法 1:使用 curl
curl http://localhost:8080
# 方法 2:浏览器访问
# 打开浏览器,访问 http://localhost:8080
# 应该看到 Nginx 欢迎页面 ✅
查看运行中的容器 :
docker ps
# 输出示例:# CONTAINER ID IMAGE STATUS PORTS NAMES
# a1b2c3d4e5f6 nginx:alpine Up 2 minutes 0.0.0.0:8080->80/tcp my-nginx
停止并删除容器 :
# 停止容器
docker stop my-nginx
# 删除容器
docker rm my-nginx
# 或一条命令完成
docker rm -f my-nginx
测试 3:查看 Docker 信息
# 查看 Docker 详细信息
docker info
# 查看 Docker 版本
docker version
# 查看已下载的镜像
docker images
# 查看所有容器(包括已停止的)docker ps -a
🎯 配置优化(可选但推荐)
1. 配置镜像加速器(中国大陆用户)
Docker Hub 在国内访问较慢,配置镜像加速器可大幅提升速度。
Mac / Windows (Docker Desktop)
- 打开 Docker Desktop
- 点击设置图标(齿轮)
- 选择 Docker Engine
- 在 JSON 配置中添加:
{
"registry-mirrors": [
"https://mirror.ccs.tencentyun.com",
"https://docker.m.daocloud.io",
"https://docker.1panel.live"
]
}
- 点击 "Apply & Restart"
Linux
# 创建或编辑 daemon.json
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://mirror.ccs.tencentyun.com",
"https://docker.m.daocloud.io",
"https://docker.1panel.live"
]
}
EOF
# 重启 Docker
sudo systemctl daemon-reload
sudo systemctl restart docker
# 验证配置
docker info | grep -A 5 "Registry Mirrors"
2. 限制资源使用(Mac / Windows)
Docker Desktop 默认使用较多资源,可以根据需要调整:
- 打开 Docker Desktop 设置
- 选择 Resources
- 调整:
- CPUs:2-4 核(根据你的 CPU)
- Memory:4-8 GB
- Swap:1-2 GB
- Disk image size:根据需要(最小 60GB)
3. 启用 BuildKit(推荐)
BuildKit 是 Docker 的下一代构建系统,速度更快。
Mac / Windows:
在 Docker Desktop 的 Docker Engine 设置中添加:
{
"features": {"buildkit": true}
}
Linux:
# 编辑 ~/.docker/config.json
{
"features": {"buildkit": true}
}
# 或使用环境变量
echo 'export DOCKER_BUILDKIT=1' >> ~/.bashrc
source ~/.bashrc
🐛 故障排查汇总
通用问题
问题 1:docker: command not found
原因 :Docker 未安装或未添加到 PATH
解决方法 :
# Mac / Linux: 检查 Docker 是否在 PATH 中
which docker
# 如果没有输出,重新安装 Docker
# Windows: 检查环境变量
# 控制面板 → 系统 → 高级系统设置 → 环境变量
# 确认 C:\Program Files\Docker\Docker\resources\bin 在 PATH 中
问题 2:权限被拒绝(Permission denied)
Linux 用户 :
# 将用户添加到 docker 组
sudo usermod -aG docker $USER
newgrp docker
问题 3:端口已被占用
错误信息 :
Error: Bind for 0.0.0.0:8080 failed: port is already allocated
解决方法 :
# 查找占用端口的进程
# Mac / Linux
lsof -i :8080
sudo kill -9
# Windows
netstat -ano | findstr :8080
taskkill /PID /F
# 或更换端口
docker run -d -p 8081:80 nginx:alpine
问题 4:磁盘空间不足
# 清理未使用的镜像、容器、卷
docker system prune -a
# 查看磁盘使用情况
docker system df
📚 知识点回顾
今天我们学习了在三大平台上安装 Docker:
安装要点
| 平台 | 安装方式 | 关键步骤 |
|---|---|---|
| Mac | Docker Desktop | 下载 DMG → 拖拽安装 → 授权启动 |
| Windows | Docker Desktop + WSL 2 | 启用 WSL 2 → 安装 Docker → 重启 |
| Linux | 包管理器 | 添加仓库 → 安装包 → 配置用户组 |
核心命令
# 验证安装
docker --version
docker info
# 测试运行
docker run hello-world
docker run -d -p 8080:80 nginx:alpine
# 查看状态
docker ps # 运行中的容器
docker ps -a # 所有容器
docker images # 本地镜像
# 清理
docker stop <容器名>
docker rm <容器名>
docker rmi <镜像名>
💬 作业时间
今日挑战 :
- ✅ 在你的电脑上完成 Docker 安装
- ✅ 成功运行
hello-world容器 - ✅ 运行 Nginx 并在浏览器访问
- ✅ 截图分享你的成功界面
加分项 :
- 配置镜像加速器(中国大陆用户)
- 尝试运行其他镜像(如:
redis,mysql) - 探索 Docker Desktop 的图形界面
讨论话题 :你在安装过程中遇到了什么问题?是如何解决的?
在评论区分享:
- ✅ 你的系统平台和 Docker 版本
- 💡 安装过程中的疑问
- 🎯 第一次看到 Nginx 欢迎页的感受
📖 系列文章
- 上一篇 :Day 1 - Docker 是什么?5 分钟看懂容器革命
- 当前 :Day 2 - 10 分钟安装 Docker 完全指南 ✅
- 下一篇 :Day 3 - 你的第一个 Docker 容器:Hello World 到实战
- 本周预告 :
- Day 4:Docker 镜像揭秘
- Day 5:运行常用容器(Nginx/MySQL/Redis)
- Day 6:数据持久化
- Day 7:Docker 网络入门
🔗 相关资源
官方文档 :
镜像加速器 :
🎉 下一步
恭喜你完成了 Docker 的安装!🎊
现在你的电脑已经具备了运行容器的能力,明天我们将:
- 深入学习容器的基本操作
- 运行你的第一个真实应用
- 理解镜像和容器的关系
- 掌握常用的 Docker 命令
明天见! 我们将一起探索 Docker 容器的世界 🐳
关注公众号 ,不错过每一篇干货!