Windows 11 wsl 中安装的Ubuntu-24.04 中装docker

Windows 11 wsl 中安装的Ubuntu-24.04 中装docker

1、前期准备


2、安装步骤

第一步:先清理失败的残留(若需要的话)

bash 复制代码
# 删除无效的密钥文件
sudo rm -f /usr/share/keyrings/docker-archive-keyring.gpg
# 删除可能残留的源文件
sudo rm -f /etc/apt/sources.list.d/docker.list

第二步:用阿里云国内源重新安装(彻底解决网络问题)

bash 复制代码
# 1. 安装依赖
sudo apt update && sudo apt install -y ca-certificates curl gnupg lsb-release

# 2. 下载阿里云 Docker GPG 密钥(国内可通)
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# 3. 添加阿里云 Docker 软件源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 4. 更新源
sudo apt update

# 5. 安装 Docker 完整三件套
sudo apt install -y docker-ce docker-ce-cli containerd.io

# 6. 启动并设置开机自启
sudo systemctl enable docker
sudo systemctl start docker

# 7. 免 sudo 权限
sudo usermod -aG docker $USER

第三步:验证安装

关闭 Ubuntu 窗口,重新打开(让用户组权限生效)

执行测试命令

bash 复制代码
docker run hello-world

出现 Hello from Docker! 即安装成功

2、

配置镜像地址

bash 复制代码
# 先解锁 resolv.conf(如果之前加了锁)
sudo chattr -i /etc/resolv.conf

# 删除旧的阿里云配置,写入新的通用镜像源
sudo rm -f /etc/docker/daemon.json
sudo tee /etc/docker/daemon.json <<-'EOF'
{
    "registry-mirrors": [
        "https://docker.rainbond.cc",
        "https://docker.1panel.live",
        "https://hub-mirror.c.163.com",
        "https://mirror.baidubce.com"
    ],
    "dns": ["223.5.5.5", "114.114.114.114"],
    "log-driver": "json-file",
    "log-opts": {
        "max-file": "1",
        "max-size": "50m"
    }
}
EOF

现在必须按上面的方式配置,这里是个大坑,之前的配置方式不行了。阿里云在 2025 年前后逐步下线了个人免费的 Docker 镜像加速服务,现在个人用户再用旧的加速器地址,会直接返回 403 禁止访问

bash 复制代码
# 这种方式已不适用了
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"]
}
EOF

3、重启docker

bash 复制代码
# 重载配置、重启 Docker
sudo systemctl daemon-reload
sudo systemctl restart docker

# 测试拉取镜像
docker run hello-world
相关推荐
lichenyang4532 天前
Docker 学习笔记(五):Docker Compose,用一个 YAML 启动前端、后端和 MongoDB
docker
lichenyang4532 天前
Docker 学习笔记(四):Dockerfile,把项目打成自己的镜像
docker·容器
lichenyang4532 天前
Docker 学习笔记(三):Docker 网络、bridge、子网和容器互通
docker·容器
lichenyang4532 天前
Docker 学习笔记(二):docker run 的参数到底在控制什么?
docker·容器
XIAOHEZIcode2 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
Patrick_Wilson7 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
Suroy7 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭7 天前
运行你的第一个Docker容器
后端·docker·容器
宋均浩8 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
程序员老赵9 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程