今天在docker的简易应用栈搭建的过程中,遇到一个问题,就是查看一个容器的存储卷挂在本地,发现进不去,原因是:我的环境docker是装在win10上的一个虚拟机上,我直接在power shell的命令行下进入会报错:提示我没有这个路径,原因就是我当前不是在虚拟机中,报错如下:
在这里插入图片描述
在这里插入图片描述
问题不是这个路径不存在,而是我当前没有在docker的虚拟机中。

下面介绍如何进入docker安装的虚拟机。我的本地pc是windows11操作系统。如果mac os,可以百度搜索关键字:mac os如何进入虚拟机

windows下的这个虚拟机叫MobyLinuxVM。
打开一个powershell终端,然后输入如下命令:

docker run --privileged -it -v /var/run/docker.sock:/var/run/docker.sock jongallant/ubuntu-docker-client 

接着输入如下命令:

docker run --net=host --ipc=host --uts=host --pid=host -it --security-opt=seccomp=unconfined --privileged --rm -v /:/host alpine /bin/sh

在这里插入图片描述
成功之后,进入宿主机也就是我们的docker安装在的虚拟机 上。

chroot /host

在这里插入图片描述
以上就完成了进入虚拟机。
上述三个命令的作用:
1、获取可访问Docker守护程序的容器
2、运行具有完全root访问权限的容器
3、切换到主机文件系统

附上别人写的很好的文章:
https://blog.csdn.net/qq_24874939/article/details/93725409

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐