Ini adalah pertanyaan besar, jadi saya akan memecahnya menjadi tiga bagian.
Gelandangan
Vagrant digunakan untuk mengatur satu atau lebih mesin virtual dengan:
- Mengimpor gambar yang sudah dibuat sebelumnya (disebut "kotak")
- Pengaturan pengaturan khusus VM (alamat IP, nama host, penerusan porta, memori, dll.)
- Menjalankan perangkat lunak bawaan seperti Wayang atau Koki
Perhatikan bahwa itu tidak menginstal perangkat lunak atau mengatur mesin melewati memuat VM dan pengaturan pengaturan VirtualBox. Anggap saja sebagai mesin scripting untuk VirtualBox.
Berikut adalah beberapa alasan yang saya lihat untuk menggunakan Vagrant lebih dari sekadar VirtualBox.
1. Mengatur Jaringan Multi-VM dengan Mudah
Sebagian besar konten pengguna daya Vagrant yang saya baca adalah tentang mengatur beberapa VM secara bersamaan. Vagrant memberi Anda satu file konfigurasi untuk mengatur ini, memungkinkan Anda untuk meluncurkan semuanya dengan satu perintah.
Katakanlah Anda telah mengkonfigurasi tiga VM untuk saling terhubung menggunakan IP statis pada subnet 192.168.1. *. Anda menemukan diri Anda di lokasi yang sudah menggunakan subnet itu untuk membagikan alamat IP, dan VM Anda sekarang bertentangan. Dengan Vagrant, Anda cukup mengedit Vagrantfile dan memuat ulang VM, sedangkan dengan VirtualBox Anda harus membuka pengaturan untuk setiap VM, jika tidak boot masing-masing VM dan ubah di dalamnya.
2. Kontrol Sumber
Dengan meletakkan pengaturan dalam file teks, ini memungkinkan konfigurasi diletakkan di bawah kendali sumber. Membuat beberapa perubahan minggu lalu dan secara tidak sengaja merusak gambar? Kembalikan perubahan dan muat ulang VM. Anda dapat melakukan ini dengan snapshot VirtualBox, tetapi akan memakan banyak ruang lebih dari sekedar Vagrantfile.
3. Berbagai Platform
Ada sejumlah besar kotak yang tersedia di situs-situs seperti http://vagrantbox.es . Ini memungkinkan Anda untuk mencoba berbagai OS atau distribusi, menerapkan ketentuan yang sama untuk mengatur lingkungan yang sama. Ini dapat membantu dengan pengujian atau menambahkan dukungan ke platform baru, dan akan memakan waktu hanya menggunakan VirtualBox.
Ada banyak argumen untuk menggunakan perangkat lunak pencadangan, serta menggunakan snapshot gambar. Untuk diskusi tambahan, saya akan mengarahkan Anda ke artikel bagus Stephen Nelson-Smith Bagaimana Membangun 100 Server Web dalam Sehari .