Как экспортировать бродячую виртуальную машину для ее передачи



У меня есть бродячая коробка и работает (настроена со стеком лампы). Мне нужно перенести его на другой компьютер. Как я могу экспортировать его?
Я думаю, что я могу получить файл (или файлы), который можно скопировать на другой компьютер, поэтому я могу запустить какую-то команду для импорта коробки vagrant.

645   6  

6 ответов:

у вас есть два способа сделать это, я назову его грязным способом и чисто:

1. Элемент грязный путь

создайте окно из текущей виртуальной среды, используя :

http://docs.vagrantup.com/v2/cli/package.html

затем скопируйте поле на другой компьютер, добавьте его с помощью vagrant box add и запустить его с помощью vagrant up как обычно.

имейте в виду что файлы в вашем рабочем каталоге (с Vagrantfile) являются общими, когда виртуальная машина загружается, так что вам нужно скопировать его на другой компьютер, а также.

2. Элемент очистить путь

теоретически никогда не должно быть необходимости делать экспорт/импорт с Бродягой. Если у вас есть предвидение, чтобы использовать подготовку для настройки виртуальной среды (chef, puppet, ansible) и системы управления версиями, такой как git для вашего рабочего каталога, копирование среды было бы на этом этапе простым, как запуск:

git clone <your_repo>
vagrant up

мой жесткий диск в моем Mac издавал звуковые сигналы в середине проекта, поэтому я решил установить SSD. Мне нужно, чтобы переместить мой проект с одного диска на другой. Несколько вещей, чтобы рассмотреть:

  • я бродяга ж / virtualbox на Mac
  • Я использую git

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

1.) Copy your ~/.vagrant.d directory to your new machine.
2.) Copy your ~/VirtualBox\ VMs directory to your new machine. 
3.) In VirtualBox add the machines one by one using **Machine** >> **Add**
4.) Run `vagrant box list` to see if vagrant acknowledges your machines. 
5.) `git clone my_project`
6.) `vagrant up`

У меня было несколько проблем с гостевыми дополнениями VB.

enter image description here

я исправил их С этим решение.

Это на самом деле довольно просто

  1. установить виртуальный бокс и залетный на удаленной машине
  2. заверни свою бродячую машину

    vagrant package --base [machine name as it shows in virtual box] --output /Users/myuser/Documents/Workspace/my.box

  3. скопируйте коробку на свой пульт

  4. init поле на удаленной машине, запустив

    vagrant init [machine name as it shows in virtual box] /Users/myuser/Documents/Workspace/my.box

  5. выполнить vagrant up

самый простой способ-упаковать коробку Vagrant, а затем скопировать (например,scp или rsync) его на другой компьютер, добавьте его и vagrant up ; -)

для подробных шагов, проверьте это =>есть ли способ клонировать бродячую коробку, которая уже установлена

Как говорится в

как я могу изменить, где Бродяга ищет свой виртуальный жесткий диск?

состояние виртуальной машины хранится в предопределенной папке VirtualBox. Копирование соответствующей машины (папки) помимо вашего vagrant-проекта на другой хост должно сохранить состояние вашей виртуальной машины.

ни один из приведенных выше ответов не работал для меня. Я уже 2 дня разрабатываю способ переноса машины Vagrant + VirtualBox с одного компьютера на другой... Это возможно!

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

что нужно делать:

1-Откройте CMD вашего компьютера 1 хост машина (командной строки. Откройте его как Adminitrator с помощью правой кнопки - > "Запуск от имени администратора") и перейдите к установленным файлам vagrant. На мой случай: C:/VVV Вы увидите свой Vagrantfile и эти папки:

/config/
/database/
/log/
/provision/
/www/
Vagrantfile
...

папка /www / находится там, где у меня есть папка синхронизации с доменами разработки. Вы можете иметь свою папку синхронизации в другом месте, просто не забудьте понять, что вы делаете. Также /config и / database-это папки синхронизации.

2 - запустить этот команда:vagrant package --vagrantfile Vagrantfile

(эта команда выполняет пакет вашей виртуальной машины, используя конфигурацию Vagrantfile.)

вот что вы можете прочитать в документации Vagrant о команде:

распространенное заблуждение заключается в том, что параметр --vagrantfile будет упаковывать a Vagrantfile, который используется, когда vagrant init используется с этой коробкой. Этот это не так. Вместо этого Vagrantfile загружается и читается как часть бродячий процесс нагрузки когда коробка используется. За дополнительной информацией, читайте о заказе загрузки Vagrantfile.

https://www.vagrantup.com/docs/cli/package.html

когда finnished, вы будете иметь пакет.файл коробки.

3 - скопируйте все эти файлы (/config, / database, Vagrantfile, package.коробка, etc.) и вставьте их на свой компьютер 2 именно там, где вы хотите установить свою виртуальную машину (в моем случае D:/VVV).

теперь у вас есть скопировать все необходимое на компьютер, 2 хозяина.

4 - запустите этого:vagrant box add package.box --name VVV

(имя --используется для имени виртуальной машины. В моем случае это называется VVV) (Вы можете использовать --force, если у вас уже есть виртуальная машина с этим именем и вы хотите ее перезаписать. (Используйте осторожно !))

это распакует вашу новую виртуальную машину vagrant.

5 - когда finnished, бегите: vagrant up

машина установите и вы должны увидеть его на "Oracle virtual machine box manager". Если вы не видите виртуальную машину, попробуйте запустить Oracle VM box от имени администратора (щелкните правой кнопкой мыши -> Запуск от имени администратора)

теперь вы можете иметь все в порядке, но не забудьте посмотреть, если ваши хозяева, как вы ожидали:

c:/windows/system32/hosts

6 - может быть, это хорошая идея, чтобы скопировать файл host с компьютера 1 на компьютер 2. Или скопируйте нужные строки. В моем случае это хозяева я нужно:

192.168.50.4 test.dev
192.168.50.4 vvv.dev
...

где 192.168.50.4-это IP-адрес моей виртуальной машины и теста.Дев и ВВВ.Дэв развиваются хозяев.

Я надеюсь, это может помочь вам :) я буду рад, если вы обратная связь перейти.

некоторые особенности моего случая, которые вы можете найти:

когда я побежал бродяга вверх, была проблема с mysql, он не работал. Я должен был работать на виртуальном сервере (щелкните правой кнопкой мыши на виртуальной машине oracle - > показать консоль): apt-get install mysql-server

после этого я снова побежал бродяга вверх и все работало, но без данных по базам данных. Поэтому я сделал mysqldump all-tables с компьютера 1 и загрузил их на компьютер 2.

ДРУГИЕ ПРИМЕЧАНИЯ: Моя виртуальная машина не совсем на компьютер 1 и компьютер 2. Например, я сделал некоторое время назад внутреннюю конфигурацию для использования NFS (для ускорения синхронизации папок сервера), и мне нужно было снова запустить эту команду на компьютере 2 хоста: vagrant plugin install vagrant-winnfsd

Comments

    Ничего не найдено.