
我在跑啟動2dockerv1.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 和 Windows 之間雙向讀寫文件RStudio我不需要像官方文件中的 samba 方法那樣連接到特殊的 IP 位址
答案2
查看您發布的文件,您的 docker 機器運行在 172.17.0.10,而不是 192.168.59.103。當您啟動映像時,新增 --bip=192.168.59.103/24 或您希望使用的任何子網,以附加該特定 IP。否則,它只是 NATS