Windows下配置Docker+WSL集成开发环境

Docker+wsl

配置Windows

win+Q搜索:启用或关闭 Windows 功能

打开Hyper-V、适用于Linux的Windows子系统、虚拟机平台(后面所有的报错基本都是因为Hyper-V没有被全部打开,因为之前的一些设置,这里不能全部打开,后面用命令强制开启)

开启后会提示重启,重启即可

安装Linux子系统

在命令行,powershell等,管理员身份运行下面的代码

这个是装wsl的内核,Docker用的就是内核,会自动创建一个Docker的虚拟机

sh 复制代码
# 下载或者更新
wsl --update
# 重新启动
wsl --shutdown

可以下载其他的虚拟机,自己用

我们可以直接去Windows的应用商店去下载,目前UBDBLinux系统都有,我选择了ubantu

命令行打开下载的ubantu后,自动初始化虚拟机

安装-配置DockerDesktop

安装

去官网下载

官网:Docker: Accelerated Container Application Development

DockerDesktop基本配置

DockerDesktop是英文的,不支持中文

  1. 配置,最少开启这两个就行
  1. 配置镜像源

    json 复制代码
    "registry-mirrors": [
        "http://docker.mirrors.ustc.edu.cn",
        "http://registry.docker-cn.com",
        "http://hub-mirror.c.163.com",
        "http://mirror.ccs.tencentyun.com"
    ]

使用Docker安装环境

直接搜索,选择版本,选择pull或者run

pull:下载镜像,暂时不运行

run:下载镜像,立即运行

直接启动就可以

直接把Docker安装到D盘

查看 Windows 上安装 Docker Desktop官方安装指南:

复制代码
https://docs.docker.com/desktop/install/windows-install/

1、提前在D盘新建Program\Docker,使用这行代码安装:用管理员权限哈,要不然会显示对路径 "D:\SoftDownload\Docker\Docker Desktop Installer.exe"的访问被拒绝。

复制代码
"Docker Desktop Installer.exe"  install --installation-dir="PATH"

2、" " 里面为你的Docker Desktop Installer.exe文件存放目录,PATH替换你想要安装路径:

复制代码
"D:\SoftDownload\Docker Desktop Installer.exe" install --installation-dir="D:\SoftDownload\Docker"

"Docker Desktop Installer.exe" install --installation-dir="D:\SoftDownload\Docker"

最后显示Installation succeeded,成功

Docker修改镜像安装路径到D盘

找到Docker文件存储位置

Docker默认把镜像存储到C盘。

直接修改

当然除以上方法还有很多中可以修改docker默认安装路径 及 docker镜像的。

例如:软链接方法;WSL命令备份、导入方法等等,大家可以自行搜索一下。

如何优雅的变更Docker Desktop的镜像存储路径-腾讯云开发者社区-腾讯云 - https://cloud.tencent.com/

使用Docker安装配置mysql

主要是使用DockerDesktop客户端限制太多,不能配置端口号、密码之类的。

我们直接使用命令行配置

docker run -d -p 3306:3306 -v /my/own/datadir:/var/lib/mysql --name mysql-test -e MYSQL_ROOT_PASSWORD=root mysql:latest

出错

wsl的update报错:1603

报错如下,wsl无法更新下载内核

主要是里面说的这个位置SOFTWARE\Classes\Directory\shell\WSL(在注册表中)我们没有权限

==解决方法:==直接给出最终解决,因为后面还有好几个文件权限需要修改

  1. 打开注册表编辑器,找到计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\WSL,右键"权限",选中"SYSTEM"用户,加上"允许完全控制"的权限。
  1. 修改多个注册表中文件的权限即可(就是跟wsl有关的好几个)

    txt 复制代码
    计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\WSL
    计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\WSL\command
    计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\Background\shell\WSL
    计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\Background\shell\WSL\command
    计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Drive\shell\WSL
    计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Drive\shell\WSL\command

修改后,继续wsl --update命令即可

ubantu系统初始化时,报错0x80370102

0x80370102是因为未启用BIOS虚拟化所引发的错误。

还是因为Hyper-V没有被全部打开(我自己配置的时候,只打开了一个,另一个一直打不开)

  1. 打开"任务管理器"------"性能",查看虚拟化是否启动了
  1. 还是不行?在命令行powershell看:bcdedit

主要还是最后这个没打开,hypervisorlaunchtype = off

还是前面配置的时候,hyper-v没有完全打开

sh 复制代码
bcdedit /set hypervisorlaunchtype Auto

使用命令打开即可

重启后即可,再次对ubantu22进行初始化

Docker安装到D盘报错 在 Docker.Installer.InstallWorkflow.<DoProcessAsync>d__23.MoveNext()

主要还是,第一次没开管理员权限,下载的东西没删完

好像是把安装包放在安装目录下,删错了,本来exe应该是500M的,最后发现就剩下7M,重新下载了个安装包试了试

安装成功

相关推荐
一杯奶茶¥15 分钟前
系统重装后如何使用万能驱动软件给新系统安装驱动
windows·电脑·系统重装
江湖有缘24 分钟前
Lunalytics部署指南:使用Docker快速搭建私有监控面板
运维·docker·容器
分布式存储与RustFS1 小时前
RustFS保姆级教程:Docker快速部署兼容S3的本地对象存储
运维·docker·容器·rustfs部署教程·本地搭建s3对象存储·rustfs网页控制台使用·awscli连接rustfs
江湖有缘1 小时前
Docker部署Papra极简文件归档平台
运维·docker·容器
艾文伯特2 小时前
k8s-1.35-centos7-安装文档
云原生·容器·kubernetes
MOONICK2 小时前
windows原生条件变量支持
c++·windows
qq_349447952 小时前
十四、k8s集群安装kube-state-metrics 组件
docker·容器·kubernetes
love530love2 小时前
AI Agent + 本地 ComfyUI 无头模式实战:关闭 IDE 后 AI 独立重启并完成图文生成
ide·人工智能·windows·python·音视频·agent·devops
必胜刻3 小时前
从零搭建全栈博客系统:Go + Vue 3 + Docker 全流程实战
vue.js·docker·golang
梅羽落3 小时前
服务器安全(Windows Server+Linux)
服务器·windows·安全