Ngrok

Soeleman 28 Juni 2018

Ngrok

_It works on my machine!_™ adalah motto developer ketika mengerjakan prototipe atau pekerjaannya. Yang umumnya dapat berfungsi dengan sempurna, kalau sedang keberuntungan; kebanyakkan tidaknya juga. Begitulah perjalanan para pengembang di-_kepepet software_®.

Alangkah indahnya kalau bisa membawa perangkat 'perang' ketika mendemokan didepan pengguna atau potensial pengguna kita. Dan sungguh tidak begitu praktis membawa PC (laptop low end tidak cukup dan yang bagus kemahalan :( ) dengan monitor besar, keyboard, mouse dan perangkat lainnya, kurang bonafit lah.

NGROK Service

Karena sedang beruntung, ternyata ada layanan yang bisa jadi solusi kita. Perkenalkan ngrok.

alt text

Layanan ini bisa membuat web-server di-PC dapat di-akses lewat internet. Bagaimana bisa? ngrok itu seperti kombinasi dari proxy dan vpn.

Contohnya web-server kita di-buat-kan 'jalan' dengan server ngrok dan mengakses local web-server kita lewat sub-domain yang disedikan. Jadi request http user kita akan diteruskan ke local web-server dan response-nya akan pelakukan sama, seakan-akan web-server-nya ada di ngrok.

Walaupun ini bisa jadi back-door, tapi tentu admin kita bisa mengatasinya (kalau ingat). Btw ini khan buat demo mengatasi masalah developer, tapi menambah masalah IT.

alt text

Kalau kita ke-dashboard-nya, kita melihat beberapa fitur yang bisa gunakan. Terutama kalau kalau yang berbayar, kita cukup cari yang gratissan saja.

alt text

App

Masih binggung? makanya sekarang coba kita gunakan ngrok.

Kita buat web app sederhana. Buat folder dan tambahkan dua file dibawah dan SDK (ini PC developer)-nya. Tapi bisa juga pakai seperti pada artikel Front-end Development dengan Node.js.

alt text

Dan dijalankan dengan perintah seperti dibawah.

alt text

Untuk menyakinkan kita sendiri, kita buka dengan web-brower dan _It works!_™ atau _It works on my machine!_™.

alt text

Demo

Sekarang saatnya kita menggunakan ngrok. Pertama ambil dulu aplikasinya, kemudian di-extract.

Menjalankannya mudah, cukup kita berikan parameter yang sesuai. Dalam hal ini, kita mebuat 'jalan' untuk layanan http dengan port 5000.

alt text

Apabisa berhasil, maka ngrok akan memberikan kita informasi layanan mereka.

Disini kita lihat uri yang diberikan untuk local web-server kita.

alt text

Android

URI yang diberikan oleh ngrok sudah dapat digunakan dan seperti yang terlihat, kita berhasil meng-internet-kan local web-server kita.

alt text

Local Admin

Bila diperhatikan, ngrok juga menjalankan web app dengan port 4040. Aplikasi ini lebih sebagai penyedia informasi dari penggunaan ngrok.

alt text

Bisa sudah ada yang mengakses local web-server kita, maka muncul informasi seperti dibawah.

alt text

Detailnya bisa dilihat pada halaman status.

alt text

Penutup

ngrok bisa jadi solusi untuk membantu kita menyajikan apa yang kita sudah kerjakan tanpa harus menyediakan infrastruktur yang besar untuk tujuan ini.

Tentu ini berguna juga untuk melakukan pengujian, terutama bila aplikasinya memang menggunakan banyak server.

Referensi