Данная лабораторная работа посвещена изучению процесса создания и конфигурирования виртуальной среды разработки с использованием Vagrant
$ open https://www.vagrantup.com/intro/index.html
- 1. Ознакомиться со ссылками учебного материала
- 2. Выполнить инструкцию учебного материала
- 3. Составить отчет и отправить ссылку личным сообщением в Slack
$ export GITHUB_USERNAME=<имя_пользователя>
$ export PACKAGE_MANAGER=<пакетный_менеджер>
$ cd ${GITHUB_USERNAME}/workspace
$ ${PACKAGE_MANAGER} install vagrant
$ vagrant version
$ vagrant init bento/ubuntu-19.10
$ less Vagrantfile
$ vagrant init -f -m bento/ubuntu-19.10
$ mkdir shared
$ cat > Vagrantfile <<EOF
\$script = <<-SCRIPT
sudo apt install docker.io -y
sudo docker pull fastide/ubuntu:19.04
sudo docker create -ti --name fastide fastide/ubuntu:19.04 bash
sudo docker cp fastide:/home/developer /home/
sudo useradd developer
sudo usermod -aG sudo developer
echo "developer:developer" | sudo chpasswd
sudo chown -R developer /home/developer
SCRIPT
EOF
$ cat >> Vagrantfile <<EOF
Vagrant.configure("2") do |config|
config.vagrant.plugins = ["vagrant-vbguest"]
EOF
$ cat >> Vagrantfile <<EOF
config.vm.box = "bento/ubuntu-19.10"
config.vm.network "public_network"
config.vm.synced_folder('shared', '/vagrant', type: 'rsync')
config.vm.provider "virtualbox" do |vb|
vb.gui = true
vb.memory = "2048"
end
config.vm.provision "shell", inline: \$script, privileged: true
config.ssh.extra_args = "-tt"
end
EOF
$ vagrant validate
$ vagrant status
$ vagrant up # --provider virtualbox
$ vagrant port
$ vagrant status
$ vagrant ssh
$ vagrant snapshot list
$ vagrant snapshot push
$ vagrant snapshot list
$ vagrant halt
$ vagrant snapshot pop
config.vm.provider :vmware_esxi do |esxi|
esxi.esxi_hostname = '<exsi_hostname>'
esxi.esxi_username = 'root'
esxi.esxi_password = 'prompt:'
esxi.esxi_hostport = 22
esxi.guest_name = '${GITHUB_USERNAME}'
esxi.guest_username = 'vagrant'
esxi.guest_memsize = '2048'
esxi.guest_numvcpus = '2'
esxi.guest_disk_type = 'thin'
end
$ vagrant plugin install vagrant-vmware-esxi
$ vagrant plugin list
$ vagrant up --provider=vmware_esxi
$ cd ~/workspace/
$ export LAB_NUMBER=10
$ git clone https://github.com/tp-labs/lab${LAB_NUMBER}.git tasks/lab${LAB_NUMBER}
$ mkdir reports/lab${LAB_NUMBER}
$ cp tasks/lab${LAB_NUMBER}/README.md reports/lab${LAB_NUMBER}/REPORT.md
$ cd reports/lab${LAB_NUMBER}
$ edit REPORT.md
$ gist REPORT.md
- VirualBox
- Vagrant providers
- Vagrant vbguest plugin
- Vagrant disksize plugin
- Vagrant vmware esxi plugin
Copyright (c) 2015-2021 The ISC Authors