【问题标题】:Boot2Docker for OS X fails to startOS X 的 Boot2Docker 无法启动
【发布时间】:2015-06-21 13:56:32
【问题描述】:

我是 docker 新手,我正在尝试在我的工作计算机上运行 boot2docker。我使用从办公室网络挂载主目录的用户帐户登录到运行 OS X 版本 10.10.1 (Yosemite) 的计算机。

我从https://github.com/boot2docker/osx-installer/releases 安装了 Docker v1.4.1 和用于 OS X 主机的 VirtualBox 4.3.20 来自https://www.virtualbox.org/wiki/Downloads

我按照 docker.com mac 安装上的说明进行操作,但没有得到应有的结果。

docker 终端报此错误:

bash-3.2$ /usr/local/bin/boot2docker init 
Virtual machine boot2docker-vm already exists
bash-3.2$ /usr/local/bin/boot2docker up 
error in run: Failed to start machine "boot2docker-vm" (run again with -v for details)
bash-3.2$ $(/usr/local/bin/boot2docker shellinit)
error in run: VM "boot2docker-vm" is not running.
bash-3.2$ docker version
Client version: 1.4.1
Client API version: 1.16
Go version (client): go1.3.3
Git commit (client): 5bc2ff8
OS/Arch (client): darwin/amd64
FATA[0000] Get http:///var/run/docker.sock/v1.16/version: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a TLS-enabled daemon without TLS? 

在 VirtualBox 上启动 boot2docker-vm 返回以下错误:

Failed to open a session for the virtual machine boot2docker-vm.

NamedPipe#0 failed to bind to local socket
/Network/Servers/servername/Volumes/cal/Users/username/.boot2docker/boot2docker-vm.sock (VERR_NOT_SUPPORTED)

【问题讨论】:

    标签: macos docker virtualbox boot2docker


    【解决方案1】:

    尝试以下方法: 有些人报告了启动暂停的 boot2docker 虚拟机的问题,下面的步骤通常已经为我解决了这个问题。

    boot2docker delete
    boot2docker download
    boot2docker init
    boot2docker up
    

    如果这不起作用打开虚拟框并查看 boot2docker vm 的状态。如果显示已保存,则从 UI 启动 VM,然后从菜单向其发送关闭信号。然后,您应该能够随后从 boot2docker 启动和停止 VM。

    【讨论】:

    • 我仍然收到错误'运行中的错误:无法启动机器“boot2docker-vm”(使用-v再次运行以获取详细信息)'
    • 可以运行boot2docker版本吗?
    • 是的。输出是'Boot2Docker-cli 版本:v1.4.1'
    • 我怀疑你可能有这个问题:github.com/boot2docker/boot2docker-cli/issues/292 上面的步骤为我修复了它,但可能还有其他问题。我在上面添加了一些其他建议
    • 感谢@Igor 的编辑!实际上github上有很多关于这些行为的问题,我发现这个问题最丰富github.com/boot2docker/boot2docker/issues/392
    【解决方案2】:

    我遇到了同样的问题,这一系列命令对我有用:

    boot2docker up
    $(boot2docker shellinit)
    

    在那之后,我能够运行docker psdocker images 之类的命令而不会出现错误,所以我一切就绪。

    【讨论】:

      【解决方案3】:

      我相信这与我之前遇到的问题相似。看起来,必须在我们的主机文件中将 localhost 分配给 127.0.0.1(位置是 /etc/hosts)。以下行应该在 /etc/hosts 中。希望能帮助到你!! boot2docker shellinit command ended up in error "Error requesting socket: exit status 255"

      127.0.0.1 localhost

      P.S:编辑帖子,因为链接可能已经消失了

      【讨论】:

        【解决方案4】:

        几个答案的组合帮助我解决了这个问题:

        正如 Usman Ismail 所说,运行以下命令:

        boot2docker delete
        boot2docker download
        boot2docker init
        boot2docker up
        

        然后运行:

        $(boot2docker shellinit)
        

        成功了。

        【讨论】:

          【解决方案5】:

          最后,这个解决方案对我有用。我必须将 VirtualBox VMs 文件夹从我的网络主目录移动到我的本地计算机并更改其权限。

          所以在我的 VirtualBox GUI 上,在 Settings>Storage 下,我更改了文件位置

          /Network/Servers/servername/Volumes/cal/Users/username/VirtualBox VMs/boot2docker.iso
          /Network/Servers/servername/Volumes/cal/Users/username/VirtualBox VMs/boot2docker-vm/boot2docker-vm.vmdk
          

          /Applications/VirtualBox VMs/boot2docker.iso
          /Applications/VirtualBox VMs/boot2docker-vm/boot2docker-vm.vmdk
          

          在设置>端口下

          来自

          /Network/Servers/servername/Volumes/cal/Users/username/VirtualBox VMs/boot2docker-vm.sock
          

          /Applications/VirtualBox VMs/boot2docker-vm.sock
          

          所以我认为这是目录和权限问题。

          【讨论】:

            【解决方案6】:

            这是我的经验...

            在家里我有一台 Macbook Air,在工作时我有一台 Macbook Pro。

            我在这两个问题上都遇到了同样的问题。如果我从命令行运行,我会得到一些关于“VBOX_E_OBJECT_IN_USE”的信息。如果我从 Virtual Box UI 运行,我会得到一些关于“VMMR0.r0”的信息。

            我几乎尝试了所有方法...重新安装 VBX、B2D 等。但无济于事。

            最后,在 MBA 课程中,我尝试了 Usman 的建议并解决了问题。

            但这在我的 MBP 上不起作用。

            对于 MBP,我必须使用磁盘工具修复我的磁盘权限。

            (感谢 mpwin 在此线程中的建议:https://github.com/boot2docker/windows-installer/issues/63

            现在,两台机器都可以工作了。希望这对其他人有所帮助。

            【讨论】:

              【解决方案7】:

              如果我重新启动 MBP 并允许 iTerm2 自动启动并打开以前的选项卡,我会收到相同的错误。我发现重新启动 iTerm2 可以解决我的问题。

              【讨论】:

                【解决方案8】:

                将配置添加到 bash:

                export DOCKER_HOST=tcp://192.168.59.103:2376
                export DOCKER_CERT_PATH=/Users/<username>/.boot2docker/certs/boot2docker-vm
                export DOCKER_TLS_VERIFY=1
                

                然后打开一个新的终端窗口或获取文件。

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2014-02-12
                  • 2015-06-04
                  • 2014-09-17
                  • 2013-11-03
                  • 2015-05-05
                  相关资源
                  最近更新 更多