Chr*_*now 34 macos docker boot2docker
boot2docker与start|一起运行 info| stop| delete参数导致错误消息:
snowch$ boot2docker start
error in run: Failed to get machine "boot2docker-vm": machine does not exist
snowch$ boot2docker info
error in run: Failed to get machine "boot2docker-vm": machine does not exist
snowch$ boot2docker stop
error in run: Failed to get machine "boot2docker-vm": machine does not exist
snowch$ boot2docker delete
error in run: Failed to get machine "boot2docker-vm": machine does not exist
Run Code Online (Sandbox Code Playgroud)
该init错误是略有不同
snowch$ boot2docker init
error in run: Failed to initialize machine "boot2docker-vm": exit status 1
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?
Chr*_*now 43
最后,我删除了boot2docker-vm虚拟机:
snowch$ rm -rfi ~/VirtualBox\ VMs/boot2docker-vm/
Run Code Online (Sandbox Code Playgroud)
答案的原始来源:https://github.com/boot2docker/boot2docker/issues/436
注意:此方法可能是最快的,但您将丢失现有的boot2docker虚拟机.如果您想保留现有的boot2docker虚拟机,可以试试Patrick Henning的答案
Pat*_*ing 36
更新: Boot2Docker现在已成为传统.请参阅此处获取官方弃用通知:https://docs.docker.com/installation/mac/,以及有关将预先存在的Boot2Docker vm迁移到Docker计算机的信息:https://docs.docker.com/machine/migrate- 到机器/.
我还没有看到这个问题是否继续存在,或者是否有类似的解决方案,docker-machine以适当的标志代替运行boot2docker,将有助于纠正它.
这对我有用,我保留了所有图像/容器.我按照Anthony A的回复:https://stackoverflow.com/a/26592419/4377364.
以下是确切的步骤:
$ boot2docker -v info
{
"Name": "boot2docker-vm",
"UUID": "470abff4-f4fe-4c24-90c5-32b3ef7bfbe2",
"Iso": "/Users/pat/.boot2docker/boot2docker.iso",
"State": "saved",
"CPUs": 4,
"Memory": 2048,
"VRAM": 8,
"CfgFile": "/Users/pat/VirtualBox VMs/boot2docker-vm/boot2docker-vm.vbox",
"BaseFolder": "/Users/pat/VirtualBox VMs/boot2docker-vm",
"OSType": "",
"Flag": 0,
"BootOrder": null,
"DockerPort": 0,
"SSHPort": 2022,
"SerialFile": "/Users/pat/.boot2docker/boot2docker-vm.sock"
}
Run Code Online (Sandbox Code Playgroud)
注意: "State": "saved".
识别.vbox文件:
"CfgFile": "/Users/pat/VirtualBox VMs/boot2docker-vm/boot2docker-vm.vbox"
将其用作启动VM的输入:
$ VBoxManage startvm "/Users/pat/VirtualBox VMs/boot2docker-vm/boot2docker-vm.vbox"
然后将其关闭:
$ VBoxManage controlvm "/Users/pat/VirtualBox VMs/boot2docker-vm/boot2docker-vm.vbox" acpipowerbutton
已验证它实际上已关闭:
$ boot2docker -v info
{
"Name": "boot2docker-vm",
"UUID": "470abff4-f4fe-4c24-90c5-32b3ef7bfbe2",
"Iso": "/Users/pat/.boot2docker/boot2docker.iso",
"State": "poweroff",
"CPUs": 4,
"Memory": 2048,
"VRAM": 8,
"CfgFile": "/Users/pat/VirtualBox VMs/boot2docker-vm/boot2docker-vm.vbox",
"BaseFolder": "/Users/pat/VirtualBox VMs/boot2docker-vm",
"OSType": "",
"Flag": 0,
"BootOrder": null,
"DockerPort": 0,
"SSHPort": 2022,
"SerialFile": "/Users/pat/.boot2docker/boot2docker-vm.sock"
}
Run Code Online (Sandbox Code Playgroud)
注意: "State": "poweroff".
启动了boot2docker VM:
$ boot2docker up
Waiting for VM and Docker daemon to start...
.................ooo
Started.
Run Code Online (Sandbox Code Playgroud)
Mah*_*alt 13
运行错误:无法启动机器"boot2docker-vm":退出状态1
//警告:这将删除所有图像
rm -rfi~/VirtualBox\VMs/boot2docker-vm /
boot2docker init
boot2docker启动
docker ps -a
小智 6
首先boot2docker -v info查看图像和文件的位置.
{
"Name": "boot2docker-vm",
"UUID": "dbd28698-2cab-43d2-8e37-f6c07bd15137",
"Iso": "/Users/ezrak/.boot2docker/boot2docker.iso",
"State": "running",
"CPUs": 8,
"Memory": 2048,
"VRAM": 8,
"CfgFile": "/Users/ezrak/VirtualBox VMs/boot2docker-vm/boot2docker-vm.vbox",
"BaseFolder": "/Users/ezrak/VirtualBox VMs/boot2docker-vm",
"OSType": "",
"Flag": 0,
"BootOrder": null,
"DockerPort": 0,
"SSHPort": 2022,
"SerialFile": "/Users/ezrak/.boot2docker/boot2docker-vm.sock"
}
Run Code Online (Sandbox Code Playgroud)
如果运行此命令时出错或者输出中提到的文件丢失,我建议您重新安装boot2docker,因为它可能是正常状态下最快的选项.
如果没有,使用返回的信息,以确定您的虚拟盒图像boot2docker( ,,Iso 和),并使用虚拟箱启动图像,然后完全关闭它.CfgFileBaseFolderSerialFile
如果你没有问题,此操作则boot2docker -v info应该给你State的的boot2docker-VM(即,它应该是poweroff在这一点).
从这里你应该能够成功使用该boot2docker up命令(没有boot2docker start)并且boot2docker init应该返回Virtual machine boot2docker-vm already exists,如果没有,那么无论如何重新安装可能是有序的.
另请检查通常的嫌疑人,如文件权限等.
HTH
| 归档时间: |
|
| 查看次数: |
26693 次 |
| 最近记录: |