头图

Docker 安装指南

1. Windows 上安装 Docker

1.1 检查系统版本

  • Windows 10(版本 2004 及以上)或 Windows 11
  • 启用 虚拟化支持(BIOS 中开启 Virtualization Technology)

1.2 启用 WSL

方法一:命令行启用(推荐)

Windows PowerShell(管理员模式) 下执行:

wsl --install

该命令将自动安装 WSL 和默认的 Ubuntu 发行版。


方法二:手动启用
  1. 打开 控制面板 → 程序 → 启用或关闭 Windows 功能
  2. 勾选以下选项:

    • ✅ 适用于 Linux 的 Windows 子系统
    • ✅ 虚拟机平台
    • ✅ Windows Hypervisor 平台(可选)
  3. 点击 确定,并重启电脑

1.3 安装 WSL2

如果默认安装的是 WSL1,可以升级到 WSL2:

wsl --set-default-version 2

查看当前 WSL 版本:

wsl --list --verbose

1.4 安装 Docker Desktop

  1. 下载 Docker Desktop 👉 [下载地址]
  2. 安装时选择 Use WSL 2 instead of Hyper-V(默认选项)
  3. 安装完成后,在 Docker Desktop 设置中勾选:

    • Enable the WSL 2 based engine
    • 选择安装的 WSL 发行版(如 Ubuntu)

1.5 验证安装

在 WSL 终端中运行:

docker run hello-world

如果输出 Hello from Docker! 🎉,表示安装成功!


2. Linux(Ubuntu 24.04)上安装 Docker

2.1 安装准备

更新并安装基础软件:

sudo apt install net-tools -y
sudo apt install vim -y
curl -sSL https://linuxmirrors.cn/main.sh -o main.sh | sudo bash main.sh
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg lsb-release

2.2 配置 Docker 源

选项一:使用清华源
curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
选项二:使用阿里云源
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

sudo sh -c 'echo "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list'

2.3 安装 Docker

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo apt install docker-compose

验证安装:

sudo systemctl status docker
docker --version
sudo docker run hello-world

启动并设置开机自启:

sudo systemctl start docker
sudo systemctl enable docker

2.4 配置镜像加速器

方法一:使用 Daocloud 前缀(推荐)

运行容器:

docker run -d -P m.daocloud.io/docker.io/library/nginx

地址替换示例:

docker.io/library/busybox
        ↓
m.daocloud.io/docker.io/library/busybox
方法二:修改 daemon.json

查看当前 Registry:

docker info | grep Registry

编辑配置文件:

sudo vim /etc/docker/daemon.json

内容如下:

{
  "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://hub-mirror.c.163.com",
    "https://docker.1ms.run",
    "https://mirrors.tencent.com",
    "https://docker.mirrors.ustc.edu.cn"
  ],
  "dns": [
    "114.114.114.114",
    "8.8.8.8"
  ]
}

重启 Docker:

sudo systemctl stop docker.service
sudo systemctl stop docker.socket
sudo systemctl start docker.service
sudo systemctl start docker.socket
sudo systemctl daemon-reload
sudo systemctl restart docker

再次运行测试:

sudo docker run hello-world

2.5 添加当前用户到 docker 组(免 sudo)

sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker

验证:

docker ps

2.6 解决 docker-compose 报错(找不到 distutils)

错误信息示例:

ModuleNotFoundError: No module named 'distutils'

解决方法:

sudo apt install python3-setuptools

更新日志
码上世界 email:1179611323@qq.com
20250517 初稿


码上世界
90 声望300 粉丝

码农极客,2004年接触Linux世界。爱技术的IT的男