Ubuntu for WSl2
在win上使用docker,想要通过容器操作宿主机器的串口,网络上的结果都是在linux系统里面对ubuntu进行修改,在win上,docker是通过wsl2实现的,相关设置都在wsl2中,如果电脑里只装了一个docker,通过docekr info
,查看到docker的位置竟然在Docker Root Dir: /var/lib/docker
,完全就是一个linux的位置,后经了解,发现win在路径C:\Users\yourname\AppData\Local\Docker\wsl\data
下的ext4.vhdx就是wsl的储存文件,正常方式无法打开,于是考虑在WSL2上装一个Ubuntu再从内部访问。
在Micorsoft store里面直接搜索Ubuntu可以直接查找到(其中LTS指长期支持版本,该版本的升级会持续很久),选择Ubuntu-20.04(LTS)版本进行下载安装,安装前在powershell中使用wsl --set-default-version 2
将wsl版本默认设置为wsl2,之后再进行安装,安装结束后使用wsl -l -v
查看相关的版本,显示如下即可
PS C:\Users\yourname\Desktop> wsl -l -v
NAME STATE VERSION
* docker-desktop-data Running 2
Ubuntu-20.04 Running 2
docker-desktop Running 2
如果ubuntu版本部分version不是2,可以使用wsl --set-version Ubuntu-20.04 2
修改其wsl版本。
可以直接在vsc中通过远程资源管理器中连接本地wsl
在power shell中也可以用ssh连接参考,当然在app界面直接点击ubuntu也可以
当装好Ubuntu后,发现可以在cmd中使用\\wsl$
来访问wsl内部文件
但在wsl中也没有发现对应的docker配置系统,在Microsoft提供的文档中,给出了配置docker的[方式](https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-docker/configure-docker-daemon],但貌似依旧没有给出指定容器的配置方法,wsl这个坑还有大。
装了个寂寞,不过也还好,现在能够使用wsl下的ubuntu直接访问串口了,也就不必再使用docker for win去查找繁琐的解决方法。