GVKun编程网logo

在共享文件夹上运行Mongo的Boot2Docker(在Windows上)(不支持此文件系统)(无法在共享文件夹里创建文件)

23

如果您对在共享文件夹上运行Mongo的Boot2Docker感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于在共享文件夹上运行Mongo的Boot2Docker的详细内容,我

如果您对在共享文件夹上运行Mongo的Boot2Docker感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于在共享文件夹上运行Mongo的Boot2Docker的详细内容,我们还将为您解答在Windows上的相关问题,并且为您提供关于Boot2docker / Windows:不能在Ubuntu容器上运行bash、Boot2docker 在 windows 上遇到 “Permission denied” 错误、Boot2docker/Windows:无法在Ubuntu容器上运行bash、boot2docker启动脚本以与主机挂载本地共享文件夹的有价值信息。

本文目录一览:

在共享文件夹上运行Mongo的Boot2Docker(在Windows上)(不支持此文件系统)(无法在共享文件夹里创建文件)

在共享文件夹上运行Mongo的Boot2Docker(在Windows上)(不支持此文件系统)(无法在共享文件夹里创建文件)

我正在尝试使用Boot2Docker在Windows上使用共享文件夹来启动Mongo容器。开始使用时,run -it -v/c/Users/310145787/Desktop/mongo:/data/db mongo我在容器内收到一条警告消息,内容为:

WARNING: This file system is not supported.

启动mongo后立即关闭。

有关如何解决此问题的任何提示或技巧?

答案1

小编典典

显然,根据要点和Sev(sevastos),mongo不支持通过VirtualBox共享文件夹安装卷:

参见mongoDB Productions
Notes:

MongoDB需要一个fsync()在目录上支持的文件系统。
例如,HGFS和Virtual Box的共享文件夹不支持此操作。

所有最简单的解决方案以及数据持久性的正确方法是“
数据量”

假设您有一个具有VOLUME [“ /data”] 的容器

# Create a data volumedocker create -v /data --name yourData busybox true# and usedocker run --volumes-from yourData ...

这并不总是理想的(但下面的内容适用于Mac,作者:Edward Chu(chuyik)):

我认为这不是一个好的解决方案,因为数据只是移到了另一个容器上,对不对?
但是它仍然位于容器内,而不是本地系统(mac磁盘)内。

我发现了另一个解决方案,即使用sshfs在boot2docker vm和您的mac之间映射数据,这可能会更好,因为数据没有存储在linux容器中。

创建一个目录以在boot2docker内部存储数据:

boot2docker sshmkdir -p /mnt/sda1/dev

使用sshfs链接boot2docker和mac:

echo tcuser | sshfs docker@localhost:/mnt/sda1/dev <your mac dir path> -p 2022 -o password_stdin

运行安装了mongo的映像:

 docker run -v /mnt/sda1/dev:/data/db <mongodb-image> mongod

在相应的boot2docker问题指出来泊坞窗问题12590(问题与-
v共享文件夹中的1.6#12590) ,这点工作的周围
使用双斜线

使用双斜杠似乎有效。我在本地检查它,它可以工作。

docker run -d -v //c/Users/marco/Desktop/data:/data <image name>

它也适用于

docker run -v /$(pwd):/data

Boot2docker / Windows:不能在Ubuntu容器上运行bash

Boot2docker / Windows:不能在Ubuntu容器上运行bash

我正在通过第三章的“Docker Book”来安装和运行一个Ubuntu容器。 我在Windows 7.1上使用Boot2Docker。

下面是我尝试运行它时发生的情况(这是第二次尝试,所以它已经有一个本地图像副本):

$ docker run -i -t ubuntu /bin/bash exec: "C:/Program Files (x86)/Git/bin/bash": stat C:/Program Files (x86)/Git/bin/bash: no such file or directory FATA[0000] Error response from daemon: Cannot start container 5e985b0b101bb9584ea3e40355089a54d1fba29655d5a1e0900c9b32c4f7e4c4: [8] System error: exec: "C:/Program Files (x86)/Git/bin/bash": stat C:/Program Files (x86)/Git/bin/bash: no such file or directory

状态:

$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 5e985b0b101b ubuntu:latest "C:/Program Files (x 21 minutes ago loving_mayer

这是抱怨缺乏C:/ Program Files(x86)/ Git / bin / bash,但是我的机器上肯定有这个function:

使用ls命令作为shell脚本的input

为什么这个Bash脚本在机器上运行,但在另一个上失败?

mv命令移动文件但报告错误:不能统计没有这样的文件或目录

使用bashparsingiwlist扫描

如何在具有参数的命令的后台运行命令

$ ls -l "c:/Program Files (x86)/Git/bin/bash" -rwxr-xr-x 1 neilw Administ 598016 May 4 09:27 c:/Program Files (x86)/Git/bin/bash

有什么想法吗?

在update-core之后的MSYS2中找不到一些主要的命令

Bash脚本 – 卸载一个设备,但不会失败,如果它没有安装?

Greprecursion和计数

运行差异,让它停下来的差异

将whatis钩子添加到bash脚本中

这适用于我:

docker run -t -i ubuntu //bin/bash

双//避免转换[1]

[1] http://www.mingw.org/wiki/Posix_path_conversion

我刚刚有同样的问题,但是

docker run -t -i ubuntu

在图像中打开一个shell。

它看起来像你的主机的shell自动扩展/bin/bash到C:/Program Files (x86)/Git/bin/bash之前,它被传递给Docker,这是不正确的,因为显然没有一个C:/Program Files (x86)/Git/bin/bash在Ubuntu容器中。

使用引号是否解决了这个问题? 例如:

docker run -i -t ubuntu "/bin/bash"

Boot2docker 在 windows 上遇到 “Permission denied” 错误

Boot2docker 在 windows 上遇到 “Permission denied” 错误

从 https://github.com/boot2docker/windows-installer/releases. 上下载了最新的 docker-install v1.1.2,运行时发生如下错误:

C:\apps\Boot2Docker>bash
luog@IKARI:/c/apps/Boot2Docker$ ./start.sh
initializing...
./start.sh: line 21: ./boot2docker.exe: Permission denied
starting...
./start.sh: line 23: ./boot2docker.exe: Permission denied
connecting...
./start.sh: line 25: ./boot2docker.exe: Permission denied
如果从非 bash 环境下直接运行发生的错误是:

C:\apps\Boot2Docker>boot2docker.exe
Access is denied.



不知道有人遇到过没有,给何解?

Boot2docker/Windows:无法在Ubuntu容器上运行bash

Boot2docker/Windows:无法在Ubuntu容器上运行bash

我正在通过“Docker Book”,我在第3章,安装和运行Ubuntu容器.我在Windows 7.1上,使用Boot2Docker.

以下是我尝试运行时发生的情况(这是第二次尝试,因此它已经有了图像的本地副本):

$docker run -i -t ubuntu /bin/bash
exec: "C:/Program Files (x86)/Git/bin/bash": stat C:/Program Files (x86)/Git/bin/bash: no such file or directory
FATA[0000] Error response from daemon: Cannot start container 5e985b0b101bb9584ea3e40355089a54d1fba29655d5a1e0900c9b32c4f7e4c4: [8] System error: exec: "C:/Program Files (x86)/Git/bin/bash": stat C:/Program Files (x86)/Git/bin/bash: no such file or directory

状态:

$docker ps -a
CONTAINER ID    IMAGE           COMMAND                CREATED            STATUS              PORTS   NAMES
5e985b0b101b    ubuntu:latest   "C:/Program Files (x   21 minutes ago     loving_mayer

它抱怨缺少C:/ Program Files(x86)/ Git / bin / bash,但我当然在我的机器上有这个:

$ls -l "c:/Program Files (x86)/Git/bin/bash"
-rwxr-xr-x    1 neilw    Administ   598016 May  4 09:27 c:/Program Files (x86)/Git/bin/bash

有什么想法吗?

这对我有用:

docker run -t -i ubuntu //bin/bash

双// //避免转换[1]

[1] http://www.mingw.org/wiki/Posix_path_conversion

boot2docker启动脚本以与主机挂载本地共享文件夹

boot2docker启动脚本以与主机挂载本地共享文件夹

如何解决boot2docker启动脚本以与主机挂载本地共享文件夹?

/var/lib/boot2docker/bootlocal.sh 可能适合您的需求,它将由初始脚本运行 /opt/bootscripts.sh

并将bootscripts.sh输出结果放入/var/log/bootlocal.log,请参见下面的部分(boot2docker 1.3.1版本)

# Allow local HD customisation
if [ -e /var/lib/boot2docker/bootlocal.sh ]; then
   /var/lib/boot2docker/bootlocal.sh > /var/log/bootlocal.log 2>&1 &
fi

我的一个用例是

我通常将shared目录放在/c/Users/larry/shared,然后添加脚本

#/bin/bash
ln -s  /c/Users/larry/shared /home/docker/shared

所以每次我都可以~/shared像在主机中一样在boot2docker中访问

请参阅FAQ.md (由@KCD提供)

解决方法

我在Win7上运行boot2docker 1.3。

我想连接一个共享文件夹。

在VirtualBox Manager中,在图像属性->共享文件夹下,添加了所需的文件夹,并将其命名为“ c /
shared”。选中“自动安装”和“设为永久”复选框。

当boot2docker启动时,它不会被挂载。我必须另外做一件事:

sudo mount -t vboxsf c/shared /c/shared

才能显示出来。由于每次使用docker时都需要它,因此我希望它仅在启动时运行,或者已经存在。因此,我认为是否可以添加一些启动脚本,但是我似乎找不到那个地方。

谢谢

编辑:这让我大叫,这是Mac上Boot2Docker的副本-访问本地文件,这是一个不同的问题。我想安装一个不是默认值的文件夹,例如OSX上的/User或Windows上的/ c / Users。我专门要求启动脚本。

关于在共享文件夹上运行Mongo的Boot2Docker在Windows上的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于Boot2docker / Windows:不能在Ubuntu容器上运行bash、Boot2docker 在 windows 上遇到 “Permission denied” 错误、Boot2docker/Windows:无法在Ubuntu容器上运行bash、boot2docker启动脚本以与主机挂载本地共享文件夹等相关内容,可以在本站寻找。

本文标签: