Ответ 1
Кажется, что элемент не существует, но он отображается в списке, потому что он присутствует в кеше. Используйте vagrant global-status --prune
, чтобы избавиться от него.
Подробнее см. бродячую документацию глобального состояния.
Как использовать команду vagrant destroy
?
В моем VagrantFile я использовал vm.config.name = 'websvr'
, и когда я открываю Virtualbox, я вижу websvr в списке Vm.
Но всякий раз, когда я использую vagrant destroy websvr
, он возвращает:
Машина с именем "websvr" не была настроена для этой среды Vagrant.
Как работает vagrant destroy
?
Кажется, что элемент не существует, но он отображается в списке, потому что он присутствует в кеше. Используйте vagrant global-status --prune
, чтобы избавиться от него.
Подробнее см. бродячую документацию глобального состояния.
Давайте попробуем эти действия в командной строке
Проверьте доступные установленные ящики, позвонив
vagrant box list
Найти идентификатор коробки
vagrant global-status --prune
Выберите по имени вашего ящика для уничтожения.
vagrant destroy 1a2b3c4d
Вот и все для тебя. Теперь вы можете уничтожить свой бродячий ящик
vagrant destroy xxxxxxx
помощью этой команды.
Сначала попробуйте запустить vagrant status
, в котором должны быть указаны все ваши виртуальные машины с их текущим статусом (работающим, не созданным и т.д.).
Имена виртуальных машин отображаются в первом столбце и чувствительны к регистру.
Например, это результат вывода vagrant status
на моей машине:
base not created (virtualbox)
git not created (virtualbox)
go not created (virtualbox)
dev_workstation not created (virtualbox)
single_instance not created (virtualbox)
metrics not created (virtualbox)
Чтобы уничтожить бродягу, вы можете попробовать выполнить следующие простые действия:
vagrant destroy -f.
Если это не сработает, вы можете попробовать это с помощью bash.
Перейдите в папку проекта, где находится ваш фактический код. Щелкните правой кнопкой мыши и нажмите git bash здесь. Вы увидите всплывающее окно bash, поэтому просто введите ту же команду в окне bash: vagrant destroy -f
.
Я надеюсь, что эти простые шаги сработают для вас.
Чтобы полностью очистить виртуальную машину и начать с нуля - у меня сработало нижеприведенное - в основном сочетание того, что уже говорили другие.
Проверьте статус виртуальной машины с помощью vagrant локально и уничтожьте, если он существует - все сделано в папке vagrant - УБЕДИТЕСЬ, что вы находитесь в правильной папке!
$ vagrant status
$ vagrant destroy
$ rm -rf .vagrant
Проверьте состояние виртуальной машины с помощью vagrant глобально и "уничтожьте", если существует - это можно сделать из любого места
$ vagrant global-status
$ vagrant global-status --prune
Проверьте состояние виртуальной машины с точки зрения VirtualBox и отмените регистрацию виртуальной машины
$ vboxmanage list vms
### note down long id, eg. c43266e6-e22b-437a-8cc1-541b7ed5c4b
$ vboxmanage unregistervm <long id> --delete
Вернитесь в соответствующую папку vagrant и запустите VM.
$ vagrant up