当前位置: 首页 > article >正文

记一次wsl2+docker无法运行的经历

前情提要

由于某个大创项目的需要和对猫娘机器人的迫切渴求(bushi 需要在电脑里面安装docker desktop。由于电脑里面安装了wsl2环境 因此决定使用wsl2+dockerdesktop的方式配置docker

遇到的问题

在像往常一样安装docker desktop并且启动时 提示错误:

running engine: waiting for the Docker API: engine linux/wsl failed to run:
starting WSL engine: 
error spotted in wslbootstrap log: 
"[2025-03-21T13:07:10.372236810Z][wsl-bootstrap][F] exit status 32"

或者错误:

deploying WSL2 distributions
ensuring main distro is deployed: checking if main distro is up to date: checking main distro bootstrap version: 
getting main distro bootstrap version:
open \\wsl$\docker-desktop\etc\wsl_bootstrap_version: The network name cannot be found.
checking if isocache exists: CreateFile \\wsl$\docker-desktop-data\isocache\: The network name cannot be found.
解决方案

尝试了网上给出的许多方法 比如 wsl --unregister docker-desktop 卸载重装docker-desktop 重新安装服务等等等等
最终发现:如果你自己编译了wsl的内核,在.wslconfig 删除加载这个内核即可解决
发现问题的原始issue https://github.com/microsoft/WSL/issues/11771
可能的原因:在内核构建流程中未打开部分功能
解决方案:

  1. 若你没有自定义内核的需求,删除自定义内核配置即可
  2. 若你存在自定义内核的需求,在https://github.com/user-attachments/files/17561192/config-wsl-6.6.36.6.txt这一配置上修改
  3. 若你需要高度自定义内核 则修改以下配置从 my
CONFIG_BRIDGE=y
CONFIG_BRIDGE_NETFILTER=y
CONFIG_NFT_COMPAT= y CONFIG_NETFILTER_XT_NAT
=y
CONFIG_NETFILTER_XT_TARGET_MASQUERADE=y
CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
相关的话

由于这个问题是docker的问题 若你在wsl里面使用docker而非使用docker desktop也可能遇到这个问题


http://www.kler.cn/a/595217.html

相关文章:

  • OSPF-8 OSPF特殊区域NSSA
  • PIC CCS编译器中的ATOI()、ATOL()和ATOI32()
  • QPrintDialog弹出慢的问题
  • 计算机技术系列博客——目录页(持续更新)
  • git 设置保存密码 git保存密码
  • 大屏技术汇集【目录】
  • 在Springboot中集成unihttp后应用无法启动的解决办法
  • HTML 中如何设置页面的语言,这对 SEO 和无障碍访问有什么影响?
  • MySQL 中,查看执行频次、慢查询日志、SHOW PROFILE和 EXPLAIN性能分析和优化
  • 如何自定义知行之桥Webhook端口返回的Response消息
  • C#使用SnsPictureBox.dll绘制点,线段、圆、折线、多边形、测量尺等多种图形。
  • 【大模型LLM第十三篇】Agent入门之CoT,self-ask,Plan-and-execute,ReAct串讲
  • 【pytest框架源码分析五】pytest插件的注册流程
  • AtCoder - arc086_d Shift and Decrement分析与实现
  • 深度剖析淘宝拍立淘按图搜索商品API技术规范
  • Hinton提出的知识蒸馏(Knowledge Distillation,简称KD):原理解释和代码实现
  • Babel 从入门到精通(二):Plugin插件和Preset预设配置详解
  • Java多线程与高并发专题——Callable 和 Runnable 的不同?
  • windows单节点验证victoriametrics结合AlertManger实现告警推送webhook
  • 分布式容器技术是什么