Как исправить ошибку "Ошибка запуска: не удалось получить компьютер"boot2docker-vm": компьютер не существует"?

Бег 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

init ошибка была немного другой

snowch$ boot2docker init
error in run: Failed to initialize machine "boot2docker-vm": exit status 1

Как я могу это исправить?

10 ответов

Решение

В итоге я удалил boot2docker-vm виртуальная машина:

snowch$ rm -rfi ~/VirtualBox\ VMs/boot2docker-vm/

Оригинальный источник ответа: https://github.com/boot2docker/boot2docker/issues/436

Примечание: этот метод, вероятно, самый быстрый, но вы потеряете существующую виртуальную машину boot2docker. Если вы хотите сохранить существующую виртуальную машину boot2docker, вы можете попробовать ответ Патрика Хеннинга

Обновление: Boot2Docker теперь унаследован. Официальное уведомление об устаревании см. Здесь: https://docs.docker.com/installation/mac/, а здесь для получения информации о переносе существующего Boot2Docker vm на Docker Machine: https://docs.docker.com/machine/migrate-to-machine/.

Я еще не видел, продолжает ли эта проблема существовать или аналогичное решение, которое работает ниже, работает docker-machine с соответствующими флагами вместо boot2docker, поможет исправить это.


Это сработало для меня, и я сохранил все свои изображения / контейнеры. Я следовал за ответом Энтони А.: /questions/757098/kak-ispravit-oshibku-oshibka-zapuska-ne-udalos-poluchit-kompyuterboot2docker-vm-kompyuter-ne-suschestvuet/757108#757108.

Вот точные шаги:

$ 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"
}

Замечания: "State": "saved",

Определил файл.vbox:

"CfgFile": "/Users/pat/VirtualBox VMs/boot2docker-vm/boot2docker-vm.vbox"

Использовал это как ввод для запуска ВМ:

$ 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"
}

Замечания: "State": "poweroff",

Запустил boot2docker VM:

$ boot2docker up

Waiting for VM and Docker daemon to start...
.................ooo
Started.
  • Ошибка:

ошибка во время выполнения: не удалось запустить компьютер "boot2docker-vm": состояние выхода 1

  • Решение:

// ВНИМАНИЕ: это удалит все ваши изображения

  1. rm -rfi ~ / VirtualBox \ VMs / boot2docker-vm /

  2. boot2docker init

  3. запуск boot2docker

  4. докер ps -a

Начать с 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"
}

Если при выполнении этой команды возникают ошибки или отсутствуют упомянутые в ее выходных файлах, я рекомендую переустановить boot2docker, поскольку это, вероятно, самый быстрый вариант для достижения нормального состояния.

Если нет, используйте возвращенную информацию для идентификации вашего образа виртуальной коробки для boot2docker (Iso, CfgFile, BaseFolder а также SerialFile) и используйте Virtual Box для запуска образа, а затем полностью его выключите.

Если у вас нет проблем с этой операцией, то boot2docker -v info должен дать вам State из boot2docker-vm (т.е. это должно быть poweroff с этой точки зрения).

Отсюда вы сможете добиться успеха с boot2docker up команда (нет boot2docker start) а также boot2docker init должен вернуться Virtual machine boot2docker-vm already existsЕсли нет, то переустановка, вероятно, в любом случае в порядке.

Также, пожалуйста, проверьте обычные подозреваемые, такие как права доступа к файлам и т. Д.

НТН

Это работает для меня:

vboxmanage discardstate boot2docker-vm
boot2docker up

Один, чтобы остерегаться, у меня была старая установка виртуальной коробки, прежде чем я перешел на новую машину. У него была старая домашняя папка в настройках. Это означало, что когда docker пытается запустить vm, он пытается сделать это в ~/oldaccount

Если вы откроете настройки в виртуальном окне, вы можете перейти к существующей учетной записи.

В настоящее время принятым ответом на этот вопрос является полное удаление boot2docker vm. Это будет работать, но это также оставит вас без вашего кеш-докера или сохраненных общих томов, сделанных через

vboxmanage sharedfolder add "boot2docker-vm" ...

Это, очевидно, не идеально, особенно если вы разделяете много томов между вашей хост-системой и вашим виртуальным компьютером или если ваши сборки занимают много времени.

Для меня error in run: Failed to get machine "boot2docker-vm": machine does not exist появляется при перезагрузке системы. VirtualBox пытается быть умным и "сохраняет" виртуальную машину, состояние которой boot2docker, похоже, не в состоянии изящно восстановить. Чтобы это исправить, зайдите в VirtualBox и выключите виртуальную машину. Затем вернитесь в boot2docker и запустите boot2docker up, Теперь, когда виртуальная машина была аккуратно выключена, boot2docker сможет нормально ее запустить.

Сначала запустите приложение boot2docker. Это устанавливает некоторые переменные и создает каталог ~/.boot2docker. Как только это будет сделано, boot2docker up/down будет работать для вас.

У меня была такая же проблема на моем Mac после перезапуска. Перезапуск OS X заставил VirtualBox приостановить работу всех виртуальных машин (включая boot2docker).

Открытие VirtualBox и запуск приостановленного экземпляра устранили проблему, и я мог повторно использовать Docker.

Принятое решение у меня не сработало

Я должен был экспортировать переменные boot2docker env

export DOCKER_HOST=tcp://192.168.59.103:2376
export DOCKER_CERT_PATH=/Users/USERNAME/.boot2docker/certs/boot2docker-vm
export DOCKER_TLS_VERIFY=1
Другие вопросы по тегам