Vagrant lxc
W poprzednim artykule (Docker - podstawowy kontener) opowiedziałem Wam o moich pierwszych przygodach z Dockerem i linuksowymi kontenerami. Jedną z zalet, jaką wszyscy podają, jest brak wirtualizacji (a co za tym idzie duża oszczędność zasobów) w porównaniu do Vagrant, który to używa właśnie wirtualizacji, choćby przy pomocy VirtualBox. Gdy się tak zagłebiałem w świad Dockera, przypadkiem natrafiłem na wtyczkę do Vagrant, która to zamiast np. VirtualBox używa własnie LXC - vagrant-lxc
Pierwsze wstępne wrażenia bardzo pozytywne. Vagrant startuje zauważalnie szybciej niż na powiedzmy VirtualBox. Dodatkowo mogę skonfigurować Vagrant niemalże dokładnie tak samo jak wcześniej, co mnie bardzo cieszy - bardzo mi zależało na standardowym podmontowaniu plików oraz sieci wewnętrznej. Przykładowy plik Vagrantfile:
Vagrant.configure("2") do |config|
config.vm.box = "fgrehm/trusty64-lxc"
config.vm.network "private_network", ip: "192.168.2.100", lxc__bridge_name: 'vlxcbr1'
config.vm.synced_folder ".", "/var/www"
config.vm.synced_folder '.', '/vagrant', disabled: true
config.vm.provider :lxc do |lxc|
# Same effect as 'customize ["modifyvm", :id, "--memory", "1024"]' for VirtualBox
lxc.customize 'cgroup.memory.limit_in_bytes', '1024M'
end
end
oraz wywołanie:
vagrant up --provider=lxc
Śmiga jak ta lala i działa jak stary poczciwy Vagrant na VirtualBox. Ktoś już na tym pracował? Zauważyliście jakieś poważne wady?