在WSL 上安装 Docker

在 Ubuntu 22.04 WSL 上安装 Docker 和 Docker Compose 是为开发环境准备的一步。Docker 提供了轻量级的容器化技术,Docker Compose 则可以管理多个容器。本文将介绍如何在 Ubuntu 22.04 WSL 环境下使用清华源安装 Docker 和 Docker Compose。

1. 删除已安装的 Docker(如有)

如果你之前安装过 Docker,请首先清除旧版本:

for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done

2. 安装依赖包

在开始安装 Docker 前,需要确保安装了一些依赖包:

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

3. 添加 Docker GPG 公钥并配置清华源镜像

为了加速国内的 Docker 下载,可以使用清华源镜像。

3.1 创建 /etc/apt/keyrings 目录
sudo install -m 0755 -d /etc/apt/keyrings
3.2 添加 Docker GPG 公钥
sudo curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
3.3 添加 Docker 仓库地址

使用 echo 命令将清华源地址添加到 Docker 仓库源列表:

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

4. 安装 Docker

更新软件包列表并安装 Docker:

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

5. 启动并测试 Docker

安装完成后,启动 Docker 并测试是否安装成功:

sudo systemctl start docker
docker --version

你应该看到类似于以下输出:

Docker version 27.3.1, build ce12230

6. 安装 Docker Compose

在 Docker Compose V2 中,docker compose 已取代了旧版的 docker-compose 命令。你可以通过以下命令直接使用 Docker Compose:

docker compose --version

如果你看到类似以下输出,说明 Docker Compose 已正确安装:

Docker Compose version v2.29.7

7. 将用户添加到 Docker 组(可选)

默认情况下,Docker 需要 sudo 权限运行。如果你想在不使用 sudo 的情况下运行 Docker,可以将当前用户添加到 Docker 组:

sudo usermod -aG docker $USER

注销并重新登录以应用权限更改。


可能遇到的问题及解决方案

1. 权限问题:Permission denied 错误

如果在安装过程中遇到文件创建或修改时提示权限不足,比如:

gpg: can't create '/etc/apt/keyrings/docker.gpg': Permission denied

解决方法:
确保使用 sudo 提升权限,尤其是在使用命令创建或修改系统目录下的文件时。可以尝试在命令前加上 sudo

sudo curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

2. 网络问题:无法连接到 download.docker.com

如果在下载 GPG 公钥时出现网络问题:

curl: (35) OpenSSL SSL_connect: Connection reset by peer in connection to download.docker.com:443

解决方法:
使用国内的镜像源,如清华源来加速下载和安装:

sudo curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

通过以上步骤,你就成功在 Ubuntu 22.04 WSL 上安装了 Docker 和 Docker Compose,并解决了常见的安装问题。Docker 和 Docker Compose 是现代开发环境中非常有用的工具,可以大大提高工作效率。


在WSL 上安装 Docker
https://blog.waynews.top/archives/DVhfGCW7
作者
Bruce
发布于
2024年10月07日
许可协议