我在跑启动到dockerv1.2.0 在 Windows 7 上,并已按照说明进行操作文件夹共享。
我在 docker 控制台中收到消息,表明 samba 服务器正在启动,并且我docker logs samba-server
收到一些看起来正在运行的输出:
docker@boot2docker:~$ docker logs samba-server
Setting up samba cfg --start my-data1 /data
add /data
Starting Samba daemons: nmbd smbd.
watching /var/log/samba/*
==> /var/log/samba/cores <==
==> /var/log/samba/log.nmbd <==
[2014/08/30 20:24:28, 0] nmbd/nmbd.c:861(main)
nmbd version 3.6.6 started.
Copyright Andrew Tridgell and the Samba Team 1992-2011
==> /var/log/samba/log.smbd <==
[2014/08/30 20:24:28, 0] smbd/server.c:1053(main)
smbd version 3.6.6 started.
Copyright Andrew Tridgell and the Samba Team 1992-2011
tail: error reading `/var/log/samba/cores': Is a directory
tail: /var/log/samba/cores: cannot follow end of this type of file; giving up on
this name
[2014/08/30 20:24:28.448867, 0] printing/print_cups.c:110(cups_connect)
Unable to connect to CUPS server localhost:631 - Connection refused
[2014/08/30 20:24:28.449807, 0] printing/print_cups.c:487(cups_async_callback)
failed to retrieve printer list: NT_STATUS_UNSUCCESSFUL
==> /var/log/samba/log.nmbd <==
[2014/08/30 20:24:51, 0] nmbd/nmbd_become_lmb.c:397(become_local_master_stage2)
*****
Samba name server 45DFC66E7CED is now a local master browser for workgroup WOR
KGROUP on subnet 172.17.0.10
*****
docker@boot2docker:~$
但是当我进入 Windows 资源管理器并输入时,\\192.168.59.103\data
我只收到一条错误消息:
我几乎尝试了这里建议的所有方法:无法连接到共享网络驱动器以及这里的大部分建议:网络错误 0x80070035 未找到网络路径
我也尝试过以下建议https://github.com/SvenDowideit/dockerfiles/issues/1沒有改變。
我懂了这里cifs-utils
使用安装tce-load
有效,但我不确定如何操作。当我tce-load -wi cifs-utils
在 boot2docker 提示符下运行时,我得到了wget: server returned error: HTTP/1.1 404 Not Found
。我可以正常安装它:tce-load -wi sshfs-fuse
虽然我不确定下一步该做什么。当我ping google.com
得到响应时,我认为我通过 boot2docker 的互联网连接是正常的。
如何使 boot2docker 和 Windows 7 主机之间的文件夹共享工作?
答案1
我通过删除所有 boot2docker 和 virtualbox 点文件和文件夹、卸载 boot2docker 和 virtualbox,然后回退到 virtualbox 的先前版本直到达到 4.3.12 来实现文件共享,然后文件夹共享完全按照描述的方式工作。
更新
现在我正在使用 boot2dockerv1.3.1它可以与安装程序捆绑的 VirtualBox 版本配合使用,无需恢复到旧版本,并且该-v
标志适用于 Windows 上的文件夹共享,就像在 Linux/OSX 上一样。因此,要共享文件夹,我这样做:
docker run -d -p 8787:8787 -v /c/Users/foobar:/home/rstudio/foobar rocker/rstudio
在这种情况下,/c/Users/foobar
对应于我计算机上位于 的现有文件夹C:/Users/foobar
,foobar
可以是任何内容。使用此方法,我可以在 Windows 和RStudio而且我不需要像官方文档中的 samba 方法那样连接到特殊的 IP 地址
答案2
查看您发布的文件,您的 docker 机器运行在 172.17.0.10,而不是 192.168.59.103。启动映像时,添加 --bip=192.168.59.103/24 或您希望使用的任何子网,以附加该特定 IP。否则,它只是 NATS