Press ESC to close

Menjalankan PostgreSQL di Docker

WhatsAppTelegramFacebookXThreadsCopy Link

Pernahkah Anda ingin mencoba PostgreSQL, tapi merasa ribet harus menginstalnya satu per satu di sistem operasi Anda? Atau mungkin Anda takut konfigurasi database malah mengacaukan sistem utama?

Tenang, Anda tidak sendirian. Banyak pemula yang merasa kesulitan saat pertama kali ingin menggunakan PostgreSQL karena proses instalasinya terlihat rumit. Namun kini ada solusi yang jauh lebih mudah dan aman — yaitu menjalankan PostgreSQL di dalam Docker.

Dengan Docker, Anda bisa membuat environment PostgreSQL yang siap pakai hanya dengan satu perintah. Tidak perlu konfigurasi manual, tidak perlu mengutak-atik sistem utama, dan bisa dihapus kapan saja tanpa meninggalkan jejak.

Dalam artikel ini, Anda akan belajar langkah demi langkah:

  • Apa itu PostgreSQL dan Docker (dan kenapa keduanya cocok dipadukan).
  • Cara menjalankan PostgreSQL di Docker dengan cepat.
  • Bagaimana menghubungkan database PostgreSQL dari aplikasi atau pgAdmin.
  • Tips dan trik agar container PostgreSQL Anda lebih aman dan efisien.

Apa Itu PostgreSQL dan Docker?

PostgreSQL adalah sistem manajemen basis data open-source yang terkenal karena keandalannya, kinerjanya yang tinggi, serta dukungannya terhadap fitur-fitur canggih seperti transaksi ACID, JSON, dan replikasi.

Docker, di sisi lain, adalah platform yang memungkinkan Anda menjalankan aplikasi di dalam container — semacam lingkungan terisolasi yang berisi semua komponen yang dibutuhkan untuk menjalankan suatu aplikasi.

Ketika Anda menggabungkan keduanya, hasilnya luar biasa: Anda bisa memiliki PostgreSQL yang siap digunakan, tanpa perlu instalasi rumit.


Langkah-Langkah Menjalankan PostgreSQL di Docker

Berikut panduan lengkap yang bisa langsung Anda praktikkan:

1. Pastikan Docker Sudah Terpasang

Cek apakah Docker sudah terinstal di sistem Anda dengan perintah:

docker --version

Jika belum, Anda bisa menginstalnya dari situs resmi: https://docs.docker.com/get-docker.


2. Menjalankan Container PostgreSQL

Gunakan perintah berikut untuk langsung menjalankan PostgreSQL:

docker run --name postgres-container -e POSTGRES_PASSWORD=mysecretpassword -d -p 5432:5432 postgres

Penjelasan singkat:

  • --name postgres-container → memberi nama container agar mudah diidentifikasi.
  • -e POSTGRES_PASSWORD=mysecretpassword → membuat password untuk user postgres.
  • -d → menjalankan container di background mode.
  • -p 5432:5432 → membuka port agar bisa diakses dari luar.
  • postgres → image resmi PostgreSQL dari Docker Hub.

Untuk memastikan container berjalan, gunakan:

docker ps

3. Mengakses PostgreSQL di Dalam Container

Gunakan perintah berikut untuk masuk ke shell PostgreSQL di dalam container:

docker exec -it postgres-container psql -U postgres

Anda sekarang berada di dalam konsol PostgreSQL. Coba buat database sederhana:

CREATE DATABASE testdb;
\l

Jika terlihat di daftar, berarti PostgreSQL berhasil dijalankan di Docker! 🎉


4. Menyimpan Data Agar Tidak Hilang

Secara default, data dalam container akan hilang jika container dihapus. Untuk itu, gunakan volume agar data tetap tersimpan:

docker run --name postgres-container -e POSTGRES_PASSWORD=mysecretpassword -d \
  -p 5432:5432 -v ~/postgres-data:/var/lib/postgresql/data postgres

Sekarang data akan disimpan di folder lokal ~/postgres-data. Jadi, meskipun container dihapus, datanya tetap aman.


5. Menghubungkan PostgreSQL dari Aplikasi atau pgAdmin

Jika Anda ingin mengelola PostgreSQL dengan antarmuka grafis, gunakan pgAdmin. Jalankan dengan Docker juga:

docker run --name pgadmin -e PGADMIN_DEFAULT_EMAIL=admin@admin.com \
  -e PGADMIN_DEFAULT_PASSWORD=admin -p 5050:80 -d dpage/pgadmin4

Kemudian buka browser dan akses:
👉 http://localhost:5050

Login dengan email dan password yang Anda tentukan, lalu tambahkan koneksi baru dengan:

  • Host: host.docker.internal (Windows/Mac) atau localhost (Linux)
  • Port: 5432
  • Username: postgres
  • Password: sesuai yang Anda buat.

6. Tips dan Praktik Terbaik

  • Gunakan .env file untuk menyimpan variabel seperti password agar tidak tampil di terminal.
  • Gunakan docker-compose.yml untuk mengatur PostgreSQL dan pgAdmin dalam satu konfigurasi.
  • Backup volume PostgreSQL secara berkala agar data tidak hilang saat migrasi atau update.

Contoh file docker-compose.yml sederhana:

version: '3.8'
services:
  postgres:
    image: postgres
    environment:
      POSTGRES_PASSWORD: mysecretpassword
    ports:
      - "5432:5432"
    volumes:
      - ./postgres-data:/var/lib/postgresql/data

  pgadmin:
    image: dpage/pgadmin4
    environment:
      PGADMIN_DEFAULT_EMAIL: admin@admin.com
      PGADMIN_DEFAULT_PASSWORD: admin
    ports:
      - "5050:80"

Jalankan semuanya dengan:

docker-compose up -d

Anda telah berhasil menjalankan PostgreSQL di Docker, lengkap dengan pengaturan data yang aman dan antarmuka pgAdmin untuk pengelolaan. Anda sudah tidak perlu repot lagi melakukan instalasi manual atau konfigurasi yang rumit.

Jika Anda ingin melangkah lebih jauh,
baca juga artikel kami tentang “Menghubungkan PostgreSQL di Docker dengan Aplikasi Node.js untuk belajar cara membuat aplikasi terhubung langsung ke database Anda.

WhatsAppTelegramFacebookXThreadsCopy Link