Windows Server 2019中Docker启动MySQL报错:找不到Linux容器内核
Windows Server 2019上Docker运行MySQL报错的解决方法
运行docker run --name=MySqlServer -d mysql时出现如下错误:
docker: Error response from daemon: failed to start service utility VM (createreadwrite): kernel 'C:\Program Files\Linux Containers\kernel' not found.
以下是针对该问题的具体修复步骤:
确认Docker运行模式
执行docker info查看输出中的OSType字段,确认当前Docker是否为Linux容器模式。如果是Windows容器模式,切换到Linux容器模式(Docker Desktop设置中可操作,切换过程会自动下载Linux容器所需的内核组件)。手动安装WSL2内核更新
若切换模式后内核文件仍缺失,以管理员身份打开PowerShell,执行以下命令安装WSL2内核更新包:Invoke-WebRequest -Uri https://aka.ms/wslkernel -OutFile wsl_update_x64.msi msiexec /i wsl_update_x64.msi /quiet修复Docker配置并重启服务
打开C:\ProgramData\Docker\config\daemon.json文件,确保配置包含以下内容(保留已有的experimental:true):{ "experimental": true, "features": { "buildkit": true } }保存文件后,重启Docker服务:
Restart-Service Docker重新启动MySQL容器
执行带密码配置的运行命令(建议添加端口映射方便外部连接):docker run --name=MySqlServer -p 3306:3306 -e MYSQL_ROOT_PASSWORD=your_password -d mysql替换
your_password为你要设置的MySQL root用户密码。
内容的提问来源于stack exchange,提问作者pantonis
相关产品推荐
相关产品推荐

