Hosting Multiple Application Menggunakan Docker dan Nginx di Droplet

Apa Itu Docker dan Nginx?

Docker adalah platform open-source yang digunakan untuk membangun, mengirimkan, dan menjalankan aplikasi dalam wadah. Wadah ini berfungsi sebagai lingkungan terisolasi yang memungkinkan aplikasi dijalankan dengan konsisten di berbagai lingkungan. Sedangkan Nginx adalah server web open-source yang dapat digunakan sebagai reverse proxy, load balancer, dan HTTP cache.

Dalam dunia hosting, Docker dan Nginx dapat digunakan untuk mengoptimalkan performa server dan memudahkan dalam manajemen aplikasi. Salah satu cara yang dapat dilakukan adalah dengan menggunakan Docker untuk menjalankan aplikasi dalam wadah terisolasi dan menggunakan Nginx sebagai reverse proxy untuk mengarahkan traffic ke masing-masing aplikasi.

Dalam artikel ini, kita akan membahas cara hosting multiple application menggunakan Docker dan Nginx di droplet.

Langkah Pertama: Persiapan Droplet

Sebelum memulai hosting multiple application, pastikan droplet yang akan digunakan sudah terpasang Docker dan Nginx. Jika belum terpasang, Anda dapat mengikuti panduan instalasi di situs resmi Docker dan Nginx.

Setelah instalasi selesai, pastikan juga firewall yang digunakan sudah diatur untuk mengizinkan traffic yang masuk ke droplet. Anda dapat menggunakan iptables untuk melakukan konfigurasi firewall di droplet.

Jika sudah siap, langkah selanjutnya adalah membuat wadah Docker untuk masing-masing aplikasi yang akan di-host.

Langkah Kedua: Membuat Wadah Docker

Untuk membuat wadah Docker, gunakan perintah berikut di terminal droplet:

docker run -d –name=myapp1 -p 8080:80 myapp1

Perintah di atas akan membuat wadah Docker dengan nama “myapp1” dan mengarahkan traffic dari port 8080 droplet ke port 80 pada wadah Docker.

Lakukan hal yang sama untuk masing-masing aplikasi yang akan di-host. Pastikan setiap wadah Docker memiliki nama yang berbeda dan mengarahkan traffic ke port yang berbeda pula.

Langkah Ketiga: Menggunakan Nginx Sebagai Reverse Proxy

Setelah membuat wadah Docker untuk masing-masing aplikasi, selanjutnya adalah menggunakan Nginx sebagai reverse proxy untuk mengarahkan traffic ke masing-masing aplikasi.

Untuk melakukan konfigurasi Nginx, buka file konfigurasi Nginx di direktori /etc/nginx/sites-available/. Buat file konfigurasi baru dengan nama sesuai dengan nama aplikasi yang akan di-host.

Contoh konfigurasi untuk aplikasi “myapp1”:

server {
listen 80;
server_name myapp1.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}

Konfigurasi di atas akan mengarahkan traffic dari domain “myapp1.com” ke wadah Docker dengan nama “myapp1” yang berjalan di port 8080.

Lakukan hal yang sama untuk masing-masing aplikasi yang akan di-host.

Langkah Keempat: Restart Nginx

Setelah melakukan konfigurasi Nginx, selanjutnya adalah me-restart Nginx untuk menerapkan perubahan konfigurasi.

Gunakan perintah berikut di terminal droplet untuk me-restart Nginx:

systemctl restart nginx

Setelah itu, coba akses masing-masing aplikasi melalui domain yang telah diatur. Jika berhasil, maka host multiple application menggunakan Docker dan Nginx di droplet sudah berhasil dilakukan.

Kesimpulan

Menggunakan Docker dan Nginx sebagai alat bantu dalam hosting multiple application dapat memudahkan dalam manajemen aplikasi dan meningkatkan performa server. Dalam artikel ini, kita telah membahas cara hosting multiple application menggunakan Docker dan Nginx di droplet. Dengan mengikuti panduan ini, diharapkan Anda dapat berhasil melakukan hosting multiple application menggunakan Docker dan Nginx di droplet.