WSL 中的 Ubuntu 系统中使用 Docker

1. 改镜像

如果有私域,那就改,如果没有就直接用公共镜像即可,因为有私域大概率会有代理,将访问公共镜像源给禁掉。

  1. 打开 source.list,路径如:"\wsl.localhost\Ubuntu-22.04\etc\apt\sources.list"
  2. 改掉镜像源链接

注:这儿说的镜像源是 Ubuntu 的镜像源,当然想要换成自己想要的镜像也直接在这改即可

2. 安装步骤

bash 复制代码
 1. 更新索引:sudo apt update 
 2. 安装 Docker 引擎(Ubuntu 包名是 docker.io):sudo apt install -y docker.io 
 3. 启动并设为开机自启:sudo systemctl enable --now docker
 4. 可选:把当前用户加入 docker 组(免 sudo):sudo usermod -aG docker $USER;然后 newgrpdocker 或重新登录 
 5. 测试:docker run hello-world 或 docker ps

注:这的方法是直接安装 Ubuntu 源中的 Docker,因为方便,不用另外添加 Docker 镜像了。如果想要安装 Docker 源中的 Docker,请看 Docker 官方教程:https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository

那么,问题来了 Ubuntu 源中的 Docker 和 Docker 镜像源中的Docker 有什么区别?

  1. 包名不同:
    • Ubuntu 源docker.io(引擎+CLI),containerd、runc 单独打包
    • 官方源 :docker-ce(引擎)、docker-ce-cli、containerd.io、docker-buildx-plugin、docker-compose-plugin、docker-ce-rootless-extras
  2. 版本与更新节奏:
    • Ubuntu 源通常版本更旧,更新节奏随 Ubuntu 发布和安全回溯(backport),更稳但不追新特性
    • 官方源由 Docker 发布,版本更新更快,能更早获得新功能和 bug 修复
  3. 组件可用性:
    • 官方源提供 Buildx 与 Compose v2 插件(docker compose 子命令),以及 rootless 相关包
    • Ubuntu 源里这些组件可能没有、或版本偏旧
  4. 支持与文档:
    • 官方文档和支持主要围绕官方源的 docker-ce 系列包
    • Ubuntu 源的 docker.io 由 Debian/Ubuntu 社区维护,功能上可用,但与官方说明有时存在差异
  5. 兼容与稳定性:
    • Ubuntu 源会对 LTS 做安全回溯,适合更保守的环境
    • 官方源适合需要新功能或与官方说明保持一致的场景

注意事项:

docker.io 与 docker-ce 不能同时安装;若以后想切换到官方源,先卸载 docker.io(sudo apt remove docker.io),再按官方文档添加源并安装 docker-ce。/var/lib/docker 里的镜像/容器通常会保留,但切换前建议备份。

相关推荐
RedMery7 小时前
Ubuntu切换wayland和x11
linux·运维·ubuntu
程序员老赵7 小时前
TDengine Docker 容器化部署指南
docker·自动化运维
uoscn7 小时前
Ubuntu24.04无操作卡死,无法唤醒问题以及内核版本切换记录
linux·ubuntu
Stark-C8 小时前
Docker清道夫?在极空间NAS上部署自动化清理助手『PruneMate』
docker·容器·自动化
Roye_ack8 小时前
【微服务 Day1】SpringCloud实战开发(Mybatis-plus + Docker)
spring cloud·docker·微服务·mybatis
总有刁民想爱朕ha8 小时前
银河麒麟v10服务器版Docker部署PostgreSQL 14教程
docker·postgresql·容器·银河麒麟服务器版v10
.hopeful.8 小时前
Docker——初识
服务器·docker·微服务·容器·架构
素雪风华8 小时前
只使用Docker+Maven实现全自动化流程部署服务;Docker创建ffmpeg环境;
java·运维·后端·docker·容器·自动化·maven
你想考研啊8 小时前
k8s使用kubectl报错
java·docker·kubernetes