我的Windows 10版本是1803
我在链接上安装了docker伙伴
:https://nickjanetakis.com/blog/setting-up-docker-for-windows-and-wsl-to-work-flawlessly
我尝试使用docker的-v,例如:
docker run -it -v ~/.aws:root/.aws/ ubuntu
我也尝试使用:
docker run -it -v $(realpath ~/.aws):/root/.aws ubuntu
但是我发现我想映射到docker系统的卷不存在。
当我这样做:
ls /root/.aws
总有空,如何在Linux的Windows子系统上映射数据卷?
答案 0 :(得分:0)
Docker for Windows在Windows本身上运行,但不了解WSL。
在WSL中:
/mnt/<drive-letter>
下的自动安装的驱动器查看Windows“驱动器”的内容虽然Docker Engine本身无法在WSL中运行,但是您可以安装Docker for Windows,并使用docker
命令行工具在WSL中运行它,并通过-h
参数指定主机名,或导出到您的DOCKER_HOST
中的.bashrc
。
您可能会发现其中一些有用的教程:
答案 1 :(得分:0)
这个问题有点老了,但是我有同样的问题。 下面是我的配置:
在使用docker作为开发环境的笔记本电脑上工作时,以下解决方案最有用。不应在生产/测试服务器中使用:
以下是命令:
在Windows主机上,在Windows计算机上创建一个文件夹
md %USERPROFILE%\dockerVolume
在WSL上,将该文件夹与WSL用户主文件夹上的链接
ln -s `wslpath $(cmd.exe /C "echo %USERPROFILE%")|sed -e 's/\r//g'`/dockerVolume $HOME/dockerVolume
然后将您的docker容器运行为:
docker run -it -v `cmd.exe /C "echo %USERPROFILE%"|sed 's/\r/\\\dockerVolume/g'`:/dockerVolume -w /dockerVolume --entrypoint /bin/bash <DOCKER IMAGE NAME>
答案 2 :(得分:0)
上面由Serge回答的方法是可行的,但是我已经取消了cmd.exe部分,只是用单引号将Windows样式路径括起来。
我在WSL内运行的Desktop for Docker遇到同样的问题,无法读取我的〜/ .aws文件夹。我的.aws文件夹是C:\ Users \ .aws文件夹的软链接。
这对我有用:
docker run -v 'C:\Users\username\.aws':/root/.aws linux_image