一、Docker安装指南
1.1 系统要求
根据不同操作系统,安装Docker前请确认系统满足以下要求:
| 操作系统 | 推荐版本 | 硬件要求 |
|---|---|---|
| Windows 10/11 | 专业版/企业版/家庭版(v1903+) | 开启WSL2或Hyper-V,4核CPU/8GB内存 |
| macOS | macOS 15+ | 支持Intel或M系列芯片 |
| Ubuntu | 24.04 LTS / 22.04 LTS | 内核≥5.4,4核CPU/8GB内存 |
| CentOS | Stream 9 | 内核≥5.4,4核CPU/8GB内存 |
1.2 Windows安装Docker Desktop
前置要求:安装 WSL2
在Windows上使用Docker Desktop,需要先安装WSL2和Linux发行版(如Ubuntu)。若未安装,请以管理员身份打开PowerShell执行:
powershell
# 启用WSL功能
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
# 设置WSL2为默认版本
wsl --set-default-version 2
# 安装Ubuntu(可从Microsoft Store安装,或使用命令)
wsl --install -d Ubuntu
安装Docker Desktop
方法一:官网下载安装(推荐新手)
- 访问 Docker官网
- 点击"Download for Windows - AMD64"下载安装包
- 双击运行安装程序,按向导完成安装
- 安装过程中勾选"启用WSL2集成"
方法二:使用winget安装(快速)
powershell
winget install Docker.DockerDesktop
启动验证
安装完成后,启动Docker Desktop。在任务栏看到鲸鱼图标静止时,打开终端验证:
powershell
docker version
docker ps
若遇到"WSL更新失败"提示,请升级Windows版本至22H2或更高,并执行wsl --update。
1.3 Linux安装Docker CE
Ubuntu安装步骤
bash
# 1. 卸载旧版本(如有)
sudo apt-get remove docker docker-engine docker.io containerd runc
# 2. 安装依赖
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release
# 3. 添加Docker官方GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 4. 添加稳定版仓库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 5. 安装Docker引擎
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
# 6. 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
# 7. 验证安装
sudo docker run hello-world
配置用户组(免sudo运行)
bash
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker
配置镜像加速(国内用户推荐)
bash
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://registry.docker-cn.com",
"https://hub-mirror.c.163.com"
]
}
EOF
sudo systemctl restart docker
1.4 macOS安装Docker Desktop
- 访问 Docker官网
- 根据芯片选择下载:Intel芯片选"Mac - Intel",M系列芯片选"Mac - Apple Silicon"
- 双击.dmg文件,将Docker拖入Applications文件夹
- 启动Docker Desktop,按提示完成配置
- 验证安装:
docker --version
二、Docker Desktop汉化指南
Docker Desktop官方目前仅提供英文界面,但可以通过语言包实现汉化。以下为各平台的汉化方法。
2.1 获取汉化包
访问 GitHub项目,下载对应版本的汉化包:
| 操作系统 | 芯片架构 | 汉化包文件 |
|---|---|---|
| Windows | Intel/AMD x64 | app-Windows-x86.asar |
| Windows | ARM | app-Windows-arm.asar |
| macOS | Apple Silicon | app-Mac-apple.asar |
| macOS | Intel x64 | app-Mac-intel.asar |
| Ubuntu/Debian | x64 | app-Debian-x86.asar |
2.2 Windows汉化步骤
- 关闭Docker Desktop(确保完全退出)
- 备份原文件 :导航到
C:\Program Files\Docker\Docker\frontend\resources - 找到
app.asar文件,复制备份(如app.asar.bak) - 替换文件 :将下载的汉化包重命名为
app.asar,复制到上述目录替换原文件 - 重新启动Docker Desktop,界面即显示中文
2.3 macOS汉化步骤
-
关闭Docker Desktop
-
打开终端,进入Docker应用资源目录:
bashcd /Applications/Docker.app/Contents/Resources -
备份原文件:
bashcp app.asar app.asar.bak -
将下载的汉化包重命名为
app.asar,复制替换 -
重新启动Docker Desktop
2.4 Linux汉化步骤
-
关闭Docker Desktop
-
进入资源目录:
bashcd /opt/docker-desktop/resources -
备份并替换
app.asar文件 -
重新启动
2.5 汉化注意事项
- 版本匹配:汉化包必须与Docker Desktop版本对应,否则可能无法启动
- 升级后重新汉化:每次升级Docker Desktop后,汉化会被覆盖,需重新替换
- 回退方法 :如汉化后出现问题,将备份的
app.asar.bak恢复即可
三、Docker基本示例:运行第一个容器
3.1 Hello World:验证安装
最经典的入门命令,验证Docker是否正确安装并运行:
bash
docker run hello-world
执行后,Docker会:
- 检查本地是否有
hello-world镜像 - 若无,则从Docker Hub自动拉取
- 创建并运行容器,输出欢迎信息后退出
输出示例:
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
3.2 运行Nginx Web服务器
这是最实用的入门示例,演示如何运行一个真正的服务:
bash
# 1. 运行Nginx容器,将容器80端口映射到主机8080端口
docker run -d --name my-nginx -p 8080:80 nginx
# 参数说明:
# -d:后台运行
# --name:指定容器名称
# -p 主机端口:容器端口:端口映射
验证访问 :打开浏览器访问 http://localhost:8080,即可看到Nginx欢迎页面。
查看容器状态:
bash
docker ps
停止并删除容器:
bash
docker stop my-nginx
docker rm my-nginx
3.3 进入容器内部
有时需要进入容器内部调试或查看文件:
bash
# 以交互模式运行容器(-it)
docker run -it --name test-container ubuntu bash
# 或者在运行中的容器执行命令
docker exec -it my-nginx bash
在容器内可以执行各种命令,如ls、cat等。输入exit退出容器。
3.4 管理镜像和容器
查看本地镜像:
bash
docker images
查看所有容器(包括已停止):
bash
docker ps -a
查看容器日志:
bash
docker logs my-nginx
# 实时跟踪日志
docker logs -f my-nginx
删除镜像:
bash
docker rmi nginx
清理未使用的容器、镜像:
bash
docker system prune -a
3.5 简单示例:自定义HTML页面
通过挂载本地目录,替换Nginx默认页面:
bash
# 1. 创建本地HTML文件
mkdir ~/my-html
echo "<h1>Hello from Docker!</h1>" > ~/my-html/index.html
# 2. 运行容器并挂载目录
docker run -d --name web -p 8080:80 -v ~/my-html:/usr/share/nginx/html nginx
访问 http://localhost:8080,即可看到自定义内容。-v参数将本地目录挂载到容器内,修改本地文件会实时反映在容器中。
四、常见问题与解决
4.1 容器启动后立即退出
现象 :运行docker run后容器状态为Exited。
诊断 :查看日志 docker logs <容器ID>
常见原因:前台进程未持续运行(如启动bash但没有交互模式),解决方案:
bash
# 保持容器运行
docker run -it ubuntu bash
4.2 端口冲突
现象 :启动容器时提示port is already allocated。
解决:修改映射端口,或查找占用进程:
bash
# 查找占用8080端口的进程(Linux/Mac)
lsof -i:8080
# 修改映射端口
docker run -d -p 8081:80 nginx
4.3 镜像拉取慢
解决:配置国内镜像加速(见1.3节)
4.4 WSL更新失败(Windows)
现象 :Docker Desktop启动提示WSL更新失败。
解决:
- 升级Windows版本至22H2+
- 以管理员身份运行PowerShell:
wsl --update - 重启Docker Desktop
