Vagrantfile
В конфигурационном файле Vagrantfile содержатся настройки виртуальной среды. Vagrant предназначен для работы с одним Vagrantfile. Это сделано для того чтобы другие участники проекта могли с легкостью запускать код проекта в виртуальной среде.
Синтаксис Vagrantfiles такой же как и в языке программирования Ruby, но программировать на нем не придется. В основном все сводиться к указанию параметра и присвоению ему значения.
После того как виртуальная среда была инициализирована в каталоге появился файл Vagrantfile. Необходимо его открыть и заменить содержимое следующим:
Vagrant.configure("2") do |config|
config.vm.box = "centos/7"
config.vm.box_version = "2004.01"
end
Параметр config.vm.box
содержит имя виртуального образа, а config.vm.box_version
его версию. Наиболее распространенные образы содержаться в облачном хранилище Vagrant, но можно создавать свои на их основе.
Также в этом файле можно указать определенное количество оперативной памяти и ядер процессора, которые будут выделены операционной системе при её запуске. Тогда при их добавлении конфигурационный файл примет следующий вид:
Vagrant.configure("2") do |config|
config.vm.box = "centos/7"
config.vm.box_version = "2004.01"
config.vm.provider "virtualbox" do |vb|
vb.memory = "4096"
vb.cpus = 2
end
end
В параметре vb.memory
указывается количество выделяемой оперативной памяти, а в параметре vb.cpus
количество виртуальных ядер.
Значение объема выделяемой оперативной памяти не должно быть больше чем половина всей памяти компьютера. То же правило касается и виртуальных ядер.
Еще в данном файле можно указать программный скрипт, который будет выполнен в виртуальной машине. В таком случае будет выглядеть следующим образом:
$script = <<-SCRIPT
#!/bin/bash
#some commands
SCRIPT
Vagrant.configure("2") do |config|
config.vm.box = "centos/7"
config.vm.box_version = "2004.01"
config.vm.provision "shell" do |s|
s.inline= $script
end
config.vm.provider "virtualbox" do |vb|
vb.memory = "4096"
vb.cpus = 2
end
end
Параметр s.inline
принимает значение переменной $script
, которая содержит в себе некоторые команды командной строки гостевой операционной системы.
Задание в данном модуле предполагает установку любого пакета в виртуальной среде, используя последний вид файла Vagrantfile.
Last updated
Was this helpful?