PostgreSQL di Docker

Kali ini aku akan menjelaskan cara memasang postgreSQL di Docker. Kita biasanya menginstall postgresql secara langsung, tapi kali ini kita akan memasangnya di Docker. Dengan menginstall di docker kita dapat mengisolasi PostgreSQL. Agar tidak berulang kali mengetikkan perintah docker yang panjang, kita akan menggunakan docker compose. Langsung saja kita buat docker compose terlebih dahulu.

Membuat Docker Compose

Untuk membuat docker compose buatlah direktori terlebih dahulu, misalkan nama direktornya adalah postgres16. Setelah itu masuklah ke direktori tersebut lalu buat file dengan nama docker-compose.yml dan isikan dengan script berikut ini. Jika sudah selesai, simpan filenya.

services:
  postgres:
    image: postgres:16
    container_name: my-postgres
    environment:
      POSTGRES_USER: myuser
      POSTGRES_PASSWORD: mypassword
      POSTGRES_DB: mydatabase
    volumes:
      - postgres_data:/var/lib/postgresql/data
    ports:
      - "5433:5432"
volumes:
  postgres_data:

Pada script di atas, kita bisa lihat kita menggunakan image: postgres:16, artinya postgresql yang akan kita pasang nanti adalah PostgreSQL 16. Pada bagian container_name kita memberi nama dengan my-postgres. Selanjutnya pada bagian environment kita setting username, password dan nama databasenya. Nantinya kita akan mengakses PostgreSQL menggunakan credentials tersebut.

Perhatikan pada ports, kita akan mengekpose port-nya dari 5432 ke 5433. Artinya, nanti kita akan mengakses localhost:5433 yang oleh docker akan diarahkan ke container port 5432. Sebenarnya teman-teman bisa saja mengekspose ke port 5432 seperti layaknya default port pada PostgreSQL, tapi teman-teman perlu memperhatikan penggunaan port 5432 ini. Jika teman-teman sudah memiliki PostgreSQL yang terpasang di localhost, maka akan berpotensi konflik. Jadi sebaiknya gunakan port lain untuk mengekspose port-nya.

Mengakses PostgreSQL di Docker

Jika docker-compose.yml sudah siap, selanjutnya kita akan mencoba untuk menjalankan PostgreSQL di Docker. Caranya cukup simple, teman-teman bisa masuk ke terminal, selanjutnya masuk ke direktori tempat docker-compose.yml berada. Jika sudah masuk, selanjutnya gunakan perintah sudo docker compose up -d. Gunakan juga sudo docker ps untuk melihat apakah container kita benar-benar berjalan.

Jika container kita sudah berjalan kita bisa mencoba untuk mengaksesnya dengan perintah berikut ini:

docker exec -it my-postgres psql -U myuser -d mydatabase

Selanjutnya, kita bisa mencoba menambahkan table dalam psql dengan perintah SQL berikut ini:

CREATE TABLE products (
    id SERIAL PRIMARY KEY,
    name TEXT NOT NULL,
    price NUMERIC
);

Setelah tabel terbuat, kita bisa menambahkan record dengan perintah SQL berikut:

INSERT INTO products (name, price) VALUES ('Laptop', 999.99);

Jika data sudah masuk kita bisa melakukan select dengan perintah SQL berikut:

SELECT * FROM products;

Jika semua perintah di atas berjalan dengan benar, maka proses memasang PostgreSQL sudah berhasil.

Memasang PostgreSQL di Docker

Penutup

Nah, demikianlah cara memasang dan mengakses PostgreSQL di Docker. Cukup mudah bukan? selanjutnya kita akan mencoba untuk memasang beberapa tools di Docker. Atau bagaimana membuat project yang bisa dijalankan di Docker. Selamat mencoba dan selamat belajar.

Ardhan Wahyu Rahmanu
Ardhan Wahyu Rahmanu

Aku adalah seorang pemikir sistematis yang idealis, mandiri, dan reflektif — terus-menerus membangun hidup yang bermakna melalui belajar, bekerja, menulis, dan menjaga arah hidup yang sadar.

Articles: 98

Tinggalkan Balasan

error: Content is protected !!