Cara Port Mapping di Docker

Oleh Fitri Aulia
Blog Panduan Port Mapping Docker

Kalau DomaiNesians pernah membuat aplikasi menggunakan Docker, pasti sempat bingung kenapa aplikasi tidak bisa diakses dari browser padahal container-nya udah jalan. Nah, masalahnya biasanya ada di bagian port mapping. Di Docker, aplikasi yang jalan di dalam container tidak otomatis bisa diakses dari luar, kita perlu membuka akses dulu melalui port. Di artikel ini, kita bakal bahas gimana cara mapping port di Docker supaya aplikasi bisa diakses dari luar, lengkap dengan contoh yang mudah dipraktekkan.

Apa Itu Port Mapping di Docker?

Port mapping di Docker itu sebenarnya konsep yang simpel, tapi sering membuat bingung di awal. Jadi, ketika menjalankan aplikasi di dalam container, aplikasi itu seperti tinggal di rumah tertutup yang tidak langsung terhubung ke dunia luar alias ke komputer host atau internet. Nah, biar aplikasi itu bisa diakses dari luar perlu membuka pintu melalui port mapping.

Secara teknis, port mapping adalah proses mengarahkan port tertentu dari container ke port yang ada di host. Misalnya, aplikasi berjalan di dalam container di port 5000, dan kamu mau akses lewat browser di port 8080, kamu tinggal mapping dengan perintah -p 8080:5000. Artinya, permintaan ke port 8080 di host akan diteruskan ke port 5000 di container.

Baca Juga:  Cara Atasi Eror Inactive Repositories Di CentOS 8 EOL

Kenapa Aplikasi di Container Tidak Bisa Langsung Diakses?

Docker

Saat menjalankan aplikasi di dalam container Docker, secara default aplikasi tersebut hanya bisa diakses dari dalam container itu sendiri. Ini karena Docker mendesain container agar terisolasi dari sistem host dan jaringan luar demi keamanan dan keteraturan.

Jadi, meskipun aplikasi kamu sudah berjalan dan mendengarkan di port tertentu misalnya 3000, DomaiNesians belum melakukan port mapping, sistem host tidak akan tahu harus meneruskan permintaan ke container tersebut. Akibatnya, saat kamu coba akses aplikasi dari browser atau tools lain di luar container, koneksi akan gagal.

Supaya aplikasi bisa diakses dari luar, kamu perlu secara eksplisit memberitahu Docker untuk menghubungkan port di container ke port di host. Inilah yang disebut dengan port mapping.

Cara Mapping Port Docker

Ini adalah langkah penting yang harus dilakukan saat menjalankan container, karena tanpa port mapping, sistem host tidak tahu harus meneruskan koneksi ke mana.

1. Format Dasar Port Mapping

Kamu bisa mapping port dengan perintah:

  • port_host: port di komputer kamu (host)
  • port_container: port tempat aplikasi berjalan di dalam container

Contoh:

Semua koneksi ke port 8080 di host akan diteruskan ke port 3000 di container. Jika aplikasi berjalan di port 3000, maka kamu bisa akses lewat http://localhost:8080.

2. Mapping Lebih dari Satu Port

Jika aplikasi butuh beberapa port, kamu bisa tambahkan opsi -p berkali-kali:

Ini sering dipakai untuk container yang punya lebih dari satu layanan, misalnya web server dan database sekaligus.

3. Cek Port yang Sudah Dimapping

Jika sudah menjalankan container, kamu bisa cek port mapping dengan perintah:

Baca Juga:  Cara Install Docker Container di CyberPanel Pada Cloud VPS

Nanti akan muncul daftar container yang aktif, lengkap dengan kolom PORTS yang nunjukin mapping yang sedang berjalan.

Troubleshooting Mapping Port Docker

Sudah mapping port, container jalan, tapi aplikasi masih tidak bisa diakses dari browser? Tenang, ini beberapa hal yang bisa kamu cek:

1. Pastikan Aplikasi Mengarah di IP yang Benar

Beberapa framework secara default hanya mengarah di localhost atau 127.0.0.1, yang artinya hanya bisa diakses dari dalam container. Pastikan aplikasi mengarah di 0.0.0.0 agar bisa menerima koneksi dari luar container. Contoh di Express.js:

2. Periksa Port yang Dimapping

Lihat kolom PORTS dan pastikan port host dan port container sudah sesuai dengan yang kamu maksud. Coba jalankan:

3. Cek Firewall atau Security Software

Jika menggunakan firewall (Windows, Linux, atau macOS), pastikan port yang kamu mapping tidak diblok. Beberapa antivirus juga suka ikut-ikutan blokir koneksi lokal.

4. Cek Aplikasi di Dalam Container

Masuk ke dalam container pakai:

Atau bash, tergantung base imagenya. Lalu coba cek aplikasi jalan atau belum. Bisa juga pakai curl localhost:3000 dari dalam container untuk cek.

5. Hindari Port yang Sudah Dipakai

Kalau port di host (misalnya 8080) sudah dipakai oleh proses lain, Docker tetap bisa jalan tapi koneksi bisa gagal. Coba pakai port lain, misalnya 8081.

6. Docker Desktop (Windows/macOS) Butuh Konfigurasi Tambahan

Pastikan juga tidak ada masalah jaringan antara VM Docker dan host. Di beberapa kasus, kamu perlu akses lewat IP tertentu, bukan localhost.

Tips Menggunakan Port Mapping di Docker

port mapping

Biar proses mapping port makin lancar, berikut beberapa tips yang bisa kamu ikuti:

Baca Juga:  Cara Install SSL Cloudflare Origin CA di CyberPanel

1. Gunakan Port yang Mudah Diingat

Jika sering testing aplikasi, pilih port yang familiar seperti 3000, 8000, atau 8080 di sisi host. Ini akan mempermudah akses dan ingat URL-nya.

2. Dokumentasikan Port yang Dipakai

Jika bekerja di tim atau menggunakan banyak container, catat port mapping-nya di README atau dokumentasi proyek. Ini bisa mencegah konflik port atau kebingungan saat debugging.

3. Gunakan docker-compose untuk Proyek Lebih Besar

Lebih baik pakai docker-compose. Kamu bisa atur port mapping langsung di file docker-compose.yml, jadi tidak perlu ngetik panjang-panjang di terminal.

4. Cek Akses Lewat curl

Akses via browser tidak berhasil, coba tes pakai curl:

Pentingnya Penggunaan Port Mapping

Mapping port di Docker adalah kunci supaya aplikasi yang berjalan di dalam container bisa diakses dari luar dengan mudah dan lancar. Tanpa port mapping yang benar, aplikasi kamu hanya akan berjalan tertutup di dalam container dan tidak bisa diakses lewat browser atau tools lain. Dengan memahami cara mapping port secara tepat, kamu bisa memastikan aplikasi berjalan lancar dan siap diakses kapan saja tanpa hambatan.

Kalau kamu ingin performa yang lebih stabil dan fleksibilitas lebih tinggi untuk menjalankan Docker dalam jangka panjang, mempertimbangkan Cloud VPS bisa jadi langkah yang tepat dan menguntungkan. VPS memberikan kontrol penuh atas lingkungan server kamu, sehingga cocok untuk development maupun deployment aplikasi skala kecil hingga besar. Dengan VPS yang andal dan cepat, akses aplikasi via port mapping Docker jadi makin lancar tanpa hambatan dan siap untuk kebutuhan produksi.

Fitri Aulia

Hi! I'm a tech enthusiast who loves digging into how things work, especially in web development, VPS setups, and anything open-source.

Berlangganan Artikel

Dapatkan artikel, free ebook dan video
terbaru dari DomaiNesia

{{ errors.name }} {{ errors.email }}
Migrasi ke DomaiNesia

Migrasi Hosting ke DomaiNesia Gratis 1 Bulan

Ingin memiliki hosting dengan performa terbaik? Migrasikan hosting Anda ke DomaiNesia. Gratis jasa migrasi dan gratis 1 bulan masa aktif!

Ya, Migrasikan Hosting Saya

Hosting Murah

This will close in 0 seconds