我正在做服务器端开发,我的工作区位于 D: 因为我不喜欢在 C: 上存储数据,但只是找不到将 d:\Workspace 映射到/home/workspace 的方法
我尝试通过以下方式创建从 C:\Users\username 到 D:\Workspace 的符号链接(symbolic link):
- 将 C:\Users\username\Workspace 映射到/home/workspace
- 停止容器
- 重命名 C:\Users\username\Workspace
- 创建名为 Workspace 的符号链接(symbolic link)到 D:\Workspace
- 启动容器
起初 Docker 在该 session 期间运行良好,直到我重新启动 Boot2Docker,然后启动容器我会得到“C:\Users\username\Workspace 文件存在”。
我认为这是 Docker 的一个问题,但无论如何我想映射到 C:\Users 之外。
最佳答案
在主机和 Boot2Docker 虚拟机之间共享工作空间
$ boot2docker 下来 $ cd "C:\Program Files\Oracle\VirtualBox" $ VBoxManage 共享文件夹添加 boot2docker-vm --name mydata --hostpath "D:\Workspace" $ boot2docker 起来
挂载共享文件夹
$ boot2docker ssh 'sudo mkdir -p/data' $ boot2docker ssh 'sudo mount -t vboxsf -o "defaults,uid=33,gid=33,rw"mydata/data'
创建纯数据容器。 Docker 最佳实践 always recommends您使用纯数据容器。您可以重用已经可用的纯数据容器:
$ docker run --volume/data:/data --name mydata dylanlindgren/docker-laravel-data
如果您希望此更改永久生效,您需要在启动配置文件/var/lib/boot2docker/bootlocal.sh 中添加最后一条命令
sleep 10 && sudo mount -t vboxsf -o "defaults,uid=33,gid=33,rw"mydata/data docker 启动我的数据
然后,您的工作区将安装在/data
您可以在 Boot2Docker here 中找到更多关于 VirtualBox Guest Additions 的文档。 .
关于windows - 如何在 C :\Users to container on Windows? 之外映射音量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30586949/