windows10家庭版安装docker踩坑解决记录

  承接上篇安装docker时候,因为是win10家庭版,踩过一些坑,记录下:

一、前提条件

  需要Windows功能:Hyper-V。

  打开控制面板 - 程序和功能 - 启用或关闭Windows功能,勾选Hyper-V,然后点击确定即可,如图:

 

  点击确定后,启用完毕会提示重启系统,我们可以稍后再重启。

  很遗憾我是家庭版...没有Hyper-V,难受,并不想换系统~

解决方案:家庭版添加Hyper-V

  新建文件hyper-V.cmd将以下内容copy到里面:

pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL

  保存后右键使用管理员权限运行

  等待安装完成,输入Y自动重启电脑即可。完成安装后,就可以使用了,点击确定即可。

二、运行安装程序,但是报错:

  Docker Desktop requires Windows 10 Pro or Enterprise version 15063 to run

  意思是安装docker必须要win10专业版,我不信邪~

  但是 docker 要查系统版本号怎么办?那就骗它。打开注册表编辑器,找到下图所示的 EditionID:

 

  把数值数据改成 Professional,瞒天过海。

  再次安装 docker,成功运行

三、但是有报错:容器窗口功能不可用

  Containers Windows Feature is not available   

  意思是容器窗口功能不可用

  新建一个containers.bat,内容如下:

pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*containers*.mum >containers.txt
for /f %%i in ('findstr /i . containers.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del containers.txt
Dism /online /enable-feature /featurename:Containers -All /LimitAccess /ALL
pause

  保存后右键使用管理员权限运行

  同理等待运行完成,输入Y重启电脑

  再次安装 docker,成功运行

  注意点:记得勾选 use windows containers instead of linux containers(使用 windows 容器而不是 linux 容器)

四、配置镜像加速:

https://cr.console.aliyun.com/cn-hongkong/mirrors

 

  设置如下,apply&restart即可。

  其他踩坑以后再记录

posted @   古兰精  阅读(1341)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
历史上的今天:
2017-08-17 Java中Action层、Service层、Modle层和Dao层的功能区分
2017-08-17 浅析css性能优化font-display的使用:控制字体加载和替换
2017-08-17 vue问题解决:Vue packages version mismatch版本始终不对的解决、TypeError: parentComponent.ctx.deactivate is not a function解决
点击右上角即可分享
微信分享提示