我正在服务器端开发,我的工作区位于D:中,因为我不喜欢在C:上存储数据,但是找不到将d:\ Workspace映射到/ home / workspace的方法
我尝试通过以下方式创建从C:\ Users \ username到D:\ Workspace的符号链接:
最初,Docker在该会话中运行良好,直到我重新启动Boot2Docker,然后启动容器,我会得到“ C:\ Users \ username \ Workspace文件存在”。
我认为这是Docker的问题,但是无论如何我都想在C:\ Users之外进行映射。
在主机和Boot2Docker虚拟机之间共享工作空间 $ boot2docker down $ cd "C:\Program Files\Oracle\VirtualBox" $ VBoxManage sharedfolder add boot2docker-vm --name mydata --hostpath "D:\Workspace" $ boot2docker up
$ boot2docker down $ cd "C:\Program Files\Oracle\VirtualBox" $ VBoxManage sharedfolder add boot2docker-vm --name mydata --hostpath "D:\Workspace" $ boot2docker up
挂载共享文件夹 $ boot2docker ssh 'sudo mkdir -p /data' $ boot2docker ssh 'sudo mount -t vboxsf -o "defaults,uid=33,gid=33,rw" mydata /data'
$ boot2docker ssh 'sudo mkdir -p /data' $ boot2docker ssh 'sudo mount -t vboxsf -o "defaults,uid=33,gid=33,rw" mydata /data'
创建仅数据容器。Docker最佳实践始终 建议您使用仅数据容器。您可以重用已经可用的仅数据容器: $ docker run --volume /data:/data --name mydata dylanlindgren/docker-laravel-data
$ 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 start mydata
sleep 10 && sudo mount -t vboxsf -o "defaults,uid=33,gid=33,rw" mydata /data docker start mydata
然后,将工作区安装在/ data
你可以找到关于VirtualBox的客户添置在Boot2Docker更多的文档在这里。