Install Vagrant dan menjalankannya

Apa itu Vagrant?

Vagrant is a tool for building complete development environments. With an easy-to-use workflow and focus on automation, Vagrant lowers development environment setup time, increases development/production parity, and makes the “works on my machine” excuse a relic of the past. – https://www.vagrantup.com/about.html

Vagrant adalah tool untuk membangun development environments yang lengkap. Dengan alur penggunaan yang mudah dan terfokus dengan automasi, Vagrant mengurangi waktu setupdevelopment environments, meningkatkan keseragaman atau keseimbangan development/production, dan meninggalkan istilah “works on my machine”. 

Ya jadi itu terjemahannya. Masih kurang? Oke, saya akan kasi contoh. Dalam dunia pengembangan software, terkadang kita gak bisa menyeragamkan development environment (DE). Kenapa? Mungkin karena OS beda, versi PHP berbeda, versi MySQL berbeda. Contoh, saya membangun sebuah startup, anggotanya 4 orang. Keempatnya mempunyai OS yang berbeda, Ubuntu 14, Ubuntu 16, OS X, dan Windows 8. Kamu bisa bayangin ribetnya setting DE macam XAMPP/LAMPP dan lain-lain di OS yang berbeda. Belum lagi setelah versi production berada pada VPS yang OSnya mungkin saja CentOS. Nah, Vagrant membantu kita buat DE yang seragam dengan production/deployment environment.

Bagaimana cara kerja Vagrant?

Jadi konsep Vagrant dari awal adalah menyeragamkan DE. Dengan kata lain menyamakan OS, versi PHP, MySQL dan lain-lain. Caranya dengan menjalankan OS pada sebuah virtual machine, lalu men-setup PHP, MySQL, Nginx dan lain-lain pada OS tersebut sehingga menjadi sebuah DE yang utuh dan siap untuk memulai development. Lalu di-pack oleh Vagrant (disebut dengan box) dan siap didistribusikan ke developer yang lain. Contoh Laravel Homestead https://laravel.com/docs/5.2/homestead.

Install Vagrant

Karena Vagrant menggunakan VM, maka kita akan install VMnya dulu. Untuk saat ini saya akan menggunakan VirtualBox.

Setelah setup sukses, lalu kita install Vagrant.

*khusus untuk Vagrant, saya sarankan untuk mendownload .deb dari Vagrant. Agar daftar box dari Vagrant terload secara otomatis. Download Vagrant.

Untuk Windows, VirtualBox bisa didownload di sini, gan Vagrant bisa didownload di sini. Sesuaikan dengan versi Windows.

Menjalankan Vagrant

Sebelum menjalankan Vagrant, kita harus tau kira-kira DE seperti apa yang kita perlukan. Kemudian kita mencari box yang sesuai. Untuk melihat box-box yang sudah tersedia, ada pada link di bawah ini:

  • https://atlas.hashicorp.com/boxes/search
  • http://www.vagrantbox.es/

Setelah itu kita akan menambahkan box ke dalam local machine kita. Contohnya saya ingin menggunakan Laravel Homestead:

Agar kita dapat mengakses SSH, edit VagrantFile menjadi seperti di bawah ini:

Kemudian kita stop Vagrant dan kita jalankan kembali.

Akses ssh seperti gambar di bawah. Untuk mengetahui bahwa akses ssh kita sukses, kita akan melakukan update pada box.

Contoh kasus

Saya bekerja di laptop saya menggunakan LAMPP dengan PHP5.6 dan teman-temannya. Saat saya ingin mencoba CodeIgniter 4 saya mengalami kendala yaitu versi PHP saya tidak mendukung. Alih-alih menginstall LAMPP dengan PHP7, saya menggunakan Vagrant untuk menjalankan PHP7 tanpa mengganggu PHP5.6 dalam laptop saya

Lebih lanjut: https://www.vagrantup.com

Leave a Reply