使用ubuntu On windows安装docker

最近需要做一下springcloud研发,不想装一堆中间件在本地,想跑一下docker,docker desktop不太好用,想直接跑linux虚拟机,有不响装vmware,就像试用下unbuntu On windows。据说可以直接用cmd命令行跑。

方法如下:

  1. 打开windows应用商店。
  1. 搜索unbuntu并安装一个版本,我这里装了24.04.1最新版。

  2. 启动unbuntu on windows,会弹出一个cmd窗口,其实是连接了windows内置wsl的ubuntu系统。首次打开要等初始化。

之后就这个界面了。其实和连接到unbuntu控制台类似,但是使用还是有限制。例如不能使用sysctl做管理,需要用service。而且很多权限受限制,很多操作需要sudo。这里不再多说,自己试试吧。对了,需要确保是使用的wsl 2版本。

  1. 安装docker-ce

    #更新包
    sudo apt-get update

    #安装必要的依赖:
    sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common

    #添加 Docker 的官方 GPG 密钥
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

    #添加 Docker APT 源
    echo "deb [arch=amd64 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

    #更新包列表并安装 Docker CE
    sudo apt-get update
    sudo apt-get install -y docker-ce docker-ce-cli containerd.io

    #启动 Docker 服务
    sudo service docker status

注意,这里启动docker可能会有报错,提示iptables的错误。

failed to start daemon: Error initializing network controller: error obtaining

  1. 安装并修改iptables

    #安装iptables
    sudo apt-get update
    sudo apt-get install -y iptables

    #重置iptables规则
    sudo iptables -F
    sudo iptables -t nat -F
    sudo iptables -t mangle -F
    sudo iptables -X

    #将iptables用iptables-legacy替换
    sudo update-alternatives --set iptables /usr/sbin/iptables-legacy

    #开启ipv4转发功能
    sudo sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf`

完成后,退出重启ubuntu on windows的窗口即可。

  1. 启动docker sudo service docker start

  2. 检查docker状态

相关推荐
jimmyleeee20 分钟前
Agent安全之一:Agent Goal Hijack(ASI01)----当智能体“正确地”执行了错误的目标
运维·网络·安全
啊哈一半醒1 小时前
Redis 三大缓存问题:缓存穿透、缓存击穿、缓存雪崩
运维·redis·1024程序员节
fb_123451 小时前
K8s存储与配置核心实战
云原生·容器·kubernetes
长不大的杨瑞杰1 小时前
OpenCode v2 CI 与自动化实战:无交互运行、权限收口与制品闭环
运维·人工智能·ci/cd·自动化·软件工程·1024程序员节
kaixin_learn_qt_ing1 小时前
Jenkins
运维·jenkins
骑着蜗牛撵大象3271 小时前
N1 小盒子撑起 AI 接口中转层:New-API 接管本地 Ollama,用 Token 分发模型能力
docker·llama·1024程序员节·api网关·飞牛nas·new-api
Ruiery2 小时前
Linux 6.6内核并发与同步(一):原子操作与内存屏障 — 内核同步的硬件底座
linux·运维·服务器·1024程序员节
我是大猴子2 小时前
py how claude work项目分析
运维·服务器·windows·1024程序员节
李纲明2 小时前
WordPress 挂上 Cloudflare 后询盘和后台异常:缓存规则、SSL 模式和真实 IP 怎么核
运维·缓存·https·cdn·wordpress·cloudflare
艸肅2 小时前
Docker 国内镜像源配置
linux·ubuntu·docker·1024程序员节