Menggunakan Laravel Homestead
Setelah tulisan sebelumnya saya menuliskan 3 cara untuk menggunakan laravel di lokal mesin dengan menggunakan homestead. Sampai saat ini saya masih menggunakan laravel homestead sebagai development environment. Untuk pemasangan homestead saya sudah tulis di tulisan sebelumnya, pada tulisan kali ini saya berfokus kepada konfigurasi agar laravel yang ada di lokal mesin terbaca ke homestead.
Konfigurasi Homestead.yaml
Saat selesai install homestead di home akan muncul folder baru namanya .homestead dan di dalamnya tersedia sebuah berkas konfigurasi Homestead.yaml. Isi dari berkas tersebut saat belum diubah :
ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
folders:
- map: ~/Code
to: /home/vagrant/Code
sites:
- map: homestead.app
to: /home/vagrant/Code/public
databases:
- homestead
variables:
- key: APP_ENV
value: local
# blackfire:
# - id: foo
# token: bar
# client-id: foo
# client-token: bar
# ports:
# - send: 93000
# to: 9300
# - send: 7777
# to: 777
# protocol: udp
$ homestead up
Tunggu sampai proses selesai dan untuk mengetesnya ada beberapa cara :
- Ping alamat 192.168.10.10, jika mendapat rely berarti sudah berhasil mennyalakan homestead.
homestead sshfungsi ini utnuk dapat masuk ke dalam mesin hommestead mirip dengan perintah vagrant ssh.- Utuk megnetes aplikasi laravelnya kunjungi alamat
hello.app, jika muncul tampilan laravel berarti konfigurasi sudah benar.
Dan untuk mengehentikan homestead yang sedang berjalan gunakan perintah :
$ homestead halt
Isu-isu yang kemungkinan terjadi ( karena saya alami )
1. 'read': No such file or directory @ rb_sysopen - /home/userame/.ssh/id_rsa.pub (Errno::ENOENT)Cara mengatasinya cukup mudah ketikan saja perintah ini di terminal
$ ssh-keygen -t rsa -C "usename@email.com"
Ikuti saja perintah yang muncul selanjutnya, setelah itu nyalakan kembali
$ homestead up
Penjelasan Singkat :
ip : Alamat ip untuk homestead.
memory : Jumlah memory yang digunakan saat homestead dinyalakan.
cpu : jumlah cpu yang digunakan saat homestead dinyalakan.
provider : mesin yang digunakan saat homestead dinyalakan.
Konfigurasi di atas mirip dengan konfigurasi Vagrantfile sebenarnya karena homestead sendiri merupakan box dari vagrant.
Sedangkan untuk bagian folders terdapat dua bagian yang pertama :
map : ini merupakan lokasi folder laravel di lokal mesin.
to : merupkana lokasi yang akan disambungkan di homestead.
Sedangkan sites merupakan konfigurasi untuk nginx yang ada di homestead
map : untuk alamat website laravel.
to : Path kemana konfigurasi nginx di homestead akan mengacu.
Dan database sesuai namanya merupakan daftar nama database yang akan otomatis dibuat di dalam homestead.
Sekarang dengan asumsi bahwa sudah memiliki source code laravel di lokal mesin maka cara selanjutnya adalah ubah sedikit konfigurasi pada berkas Homestead.yaml menjadi seperti berikut :
---
ip: "192.168.10.10"
memory: 1024
cpus: 1
provider: virtualbox
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
folders:
- map: /var/www/html/folder-laravel
to: /home/vagrant/laravel
sites:
- map: hello.app
to: /home/vagrant/laravel/public
databases:
- hello
variables:
- key: APP_ENV
value: local
# blackfire:
# - id: foo
# token: bar
# client-id: foo
# client-token: bar
# ports:
# - send: 93000
# to: 9300
# - send: 7777
# to: 777
# protocol: udp
Hal yang saya ubah :
- Memory saya ubah ke 1024 agar tidak terlalu memberatkan laptop sendiri yang kekurangan RAM.
- folders map saya ubah ke lokasi folder laravel yang berada di
/var/www/html/folder-laravel. - folders to saya ubah ke
home/vagrant/laravel. - sites map saya ubah ke
hello.app - sites to saya ubah ke
/home/vagrant/laravel/public - databases saya ubah jadi hello
Selanjutnya yang saya lakukan adalah menambahkan lamat web hello.app di hosts
$ sudo gedit /etc/hosts
Lalu tambahkan ini
192.168.10.10 hello.app
Langkah selanjutnya adalah menyalakan homestead dengan cara.
Kelebihan :
Salah satu yang disarankan di situs ofisial laravel, sudah disiapkan paket-paket yang dibutuhkan didalam box homestead, memungkinkan setiap developer mempunyai environment yang sama apabila bekerja tim dan menghindari error “di saya jalan kok di kamu ngga ?”. Dan juga satu berkas homestead.yaml bisa digunakan untuk banyak projek laravel.
Kekurangan :
Karena membutuhkan vagrant dan virtualbox maka harap perhatikan kemampuan RAM, jangan sampai laptop jadi malah tidak nyaman digunakan.
Kurang lebih seperti ini penggunaan laravel homestead di lokal yang berarti merupakan caara ke 4 jika menyambung tulisan sebelumnya. Untuk tulisan ke 5 saya belum bisa memastikan, karena dockernya sendiri saya belum install. Hhe.