Всем привет.
Уверен что вы с VirtualBox командную строку используете намного реже чем GUI. Но есть одна причина не пользоваться ни тем ни другим - это Vagrant. Vagrant этакая надстройка для виртуальных провайдеров 2-го уровня, которая позволяет автоматизировать многие повторяющиеся процессы по развертыванию виртуалок. Все описание процесса создания ВМ определенной конфигурации попадает в единый файл Vagrantfile. Полное его описание не последует в рамках данного поста, а последуют его фишки которые мне понравились от одного умного автора.
Например, чтобы сказать что:
- мы хотим развернуть виртуальную машину из образа, имя которого задается переменной окружения 'box_name',
- при этом следует проигнорировать Vagrantfile, включенный в состав этого образа как файл по умолчанию,
- машина в этом образе относится к классу Linux,
- по завершении запуска машины нужно вывести в консоль сообщение "Machine started".
Тогда следует в Vagrantfile написать так:
Vagrant.configure("2") do |config|
config.vm.box = ENV['box_name']
config.vm.ignore_box_vagrantfile = true
config.vm.guest = :linux
config.vm.post_up_message = "Machine started"
end
Можно создать отдельный раздел, определяющий какие ресурсы хостовой машины мы выделяем для гостевой машины. Делается это через доступ к свойствам отдельных провайдеров (гипервизоров), т.е обращаемся к свойствам VirtualBox:
config.vm.provider :virtualbox do |v, override|
v.gui = true # Display the VirtualBox GUI when booting the machine
v.customize ["modifyvm", :id, "--memory", ENV['ram_memory_size_mb']]
v.customize ["modifyvm", :id, "--cpus", ENV['cpu_count']]
v.customize ["modifyvm", :id, "--vram", 64] # Video memory 64 MB
end
где ram_memory_size_mb и cpu_count переменные окружения.