相关疑难解决方法(0)

如何在docker机器中安装本地卷

我正在尝试使用docker-machine与docker-compose.docker-compose.yml文件的定义如下:

web:
  build: .
  command: ./run_web.sh
  volumes:
    - .:/app
  ports:
    - "8000:8000"
  links:
    - db:db
    - rabbitmq:rabbit
    - redis:redis
Run Code Online (Sandbox Code Playgroud)

当运行docker-compose up -d一切顺利,直到尝试执行命令并产生错误:

无法启动容器b58e2dfa503b696417c1c3f49e2714086d4e9999bd71915a53502cb6ef43936d:[8]系统错误:exec:"./ run_web.sh":stat ./run_web.sh:没有这样的文件或目录

本地卷未安装到远程计算机.什么是使用webapps代码挂载本地卷的推荐策略?

docker dockerfile docker-compose

81
推荐指数
5
解决办法
6万
查看次数

boot2docker启动脚本,用于在主机上挂载本地共享文件夹

我在Win7上运行boot2docker 1.3.

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

在图像属性 - >共享文件夹下的VirtualBox Manager中,我添加了我想要的文件夹,并将其命名为"c/shared".检查"自动安装"和"永久"框.

当boot2docker启动时,它不会挂载.我还要做一个额外的事情:

sudo mount -t vboxsf c/shared /c/shared
Run Code Online (Sandbox Code Playgroud)

它出现了.因为我每次都需要使用docker,所以我希望它只是在启动时运行,或者只是已经在那里.所以我想如果有一些我可以添加的启动脚本,但我似乎无法找到它的位置.

谢谢

编辑:我大吼大叫这是在Mac上重复Boot2Docker - 访问本地文件这是一个不同的问题.我想安装一个不是默认文件夹的文件夹,例如OSX上的/ User或Windows上的/ c/Users.我特意要求启动脚本.

windows docker boot2docker

23
推荐指数
2
解决办法
1万
查看次数

Docker工具箱:有没有办法安装除"C:\ Users"Windows之外的其他文件夹?

我在Windows 7上使用VirtualBox 5.0.6安装了Docker工具箱1.8.3.

在Docker Quickstart Terminal启动期间创建的默认虚拟机有一个已定义的共享文件夹.是否可以将其他共享文件夹持久添加到此虚拟机,例如在主机上安装驱动器?c:\Usersd:\

docker boot2docker docker-toolbox

11
推荐指数
1
解决办法
9442
查看次数

在Windows中自动挂载Docker镜像中c:\ Users以外的主机文件夹

我有一个程序需要在Windows上自动安装和管理一些Docker容器,用户输入最少.

它需要自动设置Docker来挂载任意Windows文件夹.它需要从干净安装执行此操作,其中无法假定已创建Docker VM.

默认情况下,Docker几乎允许C:\ Users中的任何文件夹挂载到其Boot2Docker映像,这反过来使它们可以自己挂载到Docker映像中.

我想要一种从VM外部自动修改默认安装脚本的方法,以便我可以使用其他文件夹,但"VBoxManage.exe运行",copyto等命令不能以任何方式在Boot2Docker上运行,不像其他我有Linux VMs.

因此,在我寻求解决方案时,我偶然发现了py-vb​​ox,它允许您使用VirtualBox API轻松地将键盘事件发送到控制台.它还允许直接控制台会话,但它们就像VBoxManage.exe一样失败.所以,这结束了我发送了很多

echo command >> /c/script.sh
Run Code Online (Sandbox Code Playgroud)

键盘上的命令,以便设置将安装额外卷的脚本.有没有更好的办法?

对于任何可能需要它的人来说,这是一个非常简化的版本.前两位是旧的.bat文件,因此它们适用于任何人.首先,创建我们的docker VM:

set PATH=%PATH%;"c:\Program Files (x86)\Git\bin"
docker-machine create --driver virtualbox my-docker-vm
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" sharedfolder add "my-docker-vm" --name "c/myfolder" --hostpath "c:\myfolder" --automount
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" setextradata "my-docker-vm" VBoxInternal2/SharedFoldersEnableSymlinksCreate/c/myfolder 1
Run Code Online (Sandbox Code Playgroud)

然后,必须启动docker VM ...

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm --type=headless my-docker-vm
set PATH=%PATH%;"c:\Program Files (x86)\Git\bin"
docker-machine env --shell cmd my-docker-vm > temp.cmd
call temp.cmd
del temp.cmd
Run Code Online (Sandbox Code Playgroud)

现在,Python脚本的简化版本使用py-vb​​ox通过键盘将简化的安装脚本写入VM:

import virtualbox
script = """\n\
echo if …
Run Code Online (Sandbox Code Playgroud)

python windows docker boot2docker

8
推荐指数
1
解决办法
389
查看次数