问题描述
我在 Ubuntu 20.04 发行版中使用 WSL2,我尝试使用以下命令在 Docker 中创建一个容器:
docker run --hostname=quickstart.cloudera --privileged=true -it -v $PWD:/src --publish-all=true -p 8888:8888 -p 8080:8080 -p 7180:7180 cloudera/quickstart /usr/bin/docker-quickstart
当我运行这个命令时,下载开始时的重量约为 4.4 GB,(我认为这是因为我第一次运行这个容器),当下载结束时,我使用以下命令检查容器 docker ps -a
并且容器的状态为 Exited (139) 6 minutes ago
,当检查我的图像列表时
REPOSITORY TAG IMAGE ID CREATED SIZE
uracilo/hadoop latest 902e5bb989ad 8 months ago 727MB
cloudera/quickstart latest 4239cd2958c6 4 years ago 6.34GB
我认为镜像创建成功,但是当我尝试运行第一个命令时,我一直在状态中获取 Exited (139)
并且无法使用容器
显然,退出代码 139 是指系统或硬件(可能是 RAM)出现问题,但我不确定。我不知道这个问题是因为我在 ram 中使用 wsl 还是我的 8GB 不足以运行图像
有什么办法可以成功运行这个镜像吗?
解决方法
您需要在 Windows 的 %userprofile%
文件夹下创建一个名为 .wslconfig 的文件,并将以下几行复制到该文件中
[wsl2]
kernelCommandLine = vsyscall=emulate
然后重启你的 Docker 引擎。