Cara Install Postgres dan PgAdmin4 di Docker Container
Pada tutorial kali ini saya akan menjelaskan Bagaimana Cara Melakukan Install Postgres dan PgAdmin4 pada Docker Container.
Persiapan
Untuk membuat docker container postgres dan pgadmin4, salah satu caranya adalah dengan menggunakan docker image yang telah disediakan oleh Docker Hub.
Membuat Docker Image Postgres dan PgAdmin4
Berikut perintah untuk membuat docker image Postgres. Pada saat artikel ini dibuat versi terbarunya adalah Postgres 15.
docker pull postgres
Berikut perintah untuk membuat docker image PgAdmin4.
docker pull dpage/pgadmin4
Membuat Docker Container Postgres dan PgAdmin4
Membuat docker container postgres
Setelah kalian berhasil membuat docker image, tahap selanjutnya adalah membuat docker container. Disini saya memberikan 2(dua) alternatif. Yang pertama adalah membuat docker container tanpa menggunakan volume dan yang kedua adalah membuat container menggunakan volume.
Membuat Docker Container Postgres Tanpa Volume
Perintah
docker container create --name postgres15 -p 7117:5432 -e POSTGRES_PASSWORD=postgres postgres
Catatan
Pada perintah diatas saya membuat sebuah docker container dari docker image postgres dan diberi nama postgres15, dengan port 7117 untuk diakses diluar docker dan port 5432 ketika kalian ingin mengakses lewat docker (command prom). dan docker container tersebut saya berikan password postgres.
Membuat Docker Container Postgres dengan Volume
Sebelum membuat docker container dengan volume, pertama yang perlu dilakukan adalah membuat volume-nya terlebih dahulu. Berikut perintah untuk membuat sebuah volume di docker :
docker volume create postgres_data
Catatan
Pada perintah diatas saya membuat sebuah docker volume dengan nama postgres_data. Tujuan pembuatan volume, agar ketika data container yang terhubung dengan volume tersebut, datanya masih tersimpan. Sehingga ketika kalian menghubungkannya kembali dengan container, kalian bisa menggunakan datanya kembali.
Setelah membuat volume, baru kalian membuat docker container postgres-nya dengan mengetikkan perintah seperti berikut :
Perintah
docker container create --name postgres15 -p 7117:5432 -e POSTGRES_PASSWORD=postgres -v /postgres_data:/var/lib/postgresql/data postgres
Catatan
Pada perintah diatas terdapat perintah -v /postgres_data:/var/lib/postgresql/data, itu saya gunakan agar container postgres yang buat terhubung dengan volume.
BACA JUGA
Membuat Docker Container PgAdmin4
Perintah
docker container create --name pgadmin -p 80:80 -e "PGADMIN_DEFAULT_EMAIL=java-community@gmail.com" -e "PGADMIN_DEFAULT_PASSWORD=javacommunity" dpage/pgadmin4
Catatan
Pada perintah diatas saya membuat sebuah docker container dari docker image dpage/pgadmin4 dan diberi nama pgadmin, dengan port 80. Untuk "PGADMIN_DEFAULT_EMAIL=java-community@gmail.com" dan "PGADMIN_DEFAULT_PASSWORD=javacommunity" itu saya gunakan untuk mengakses PgAdmin4 lewat browser.
Menjalankan Docker Container
Untuk menjalankan docker container postgres dan PgAdmin4 gunakan perintah :
docker container start postgres15
docker container start pgadmin
Tips
Ketika kalian ingin menjalankan 2(dua) docker container secara bersamaan, kalian bisa menggunakan perintah berikut :
docker container start postgres15 pgadmin
Menjalankan PgAdmin4
Untuk menjalankan PgAdmin4, kalian bisa membuka browser kalian kemudian ketikan "localhost", maka akan muncul tampilan seperti berikut :
Kemudian masukkan email dan password (pada saat kalian membuat container pgadmin). Setelah berhasil login, hubungkan PgAdmin4 dengan Postgres dengan cara klik kanan Servers -> Create -> Server ...
Kemudian muncul sebuah dialog, isi sesuai dengan konfigurasi pada saat kalian membuat container postgres tadi.
Catatan
Untuk Host name/Address saya isi dengan 192.168.100.4, itu merupakan IP Address dari laptop yang saya gunakan. Silahkan sesuaikan dengan IP Address kalian.
Berikut tampilan dari dashboard PgAmin4
Sekian tutorial bagaimana cara melakukan install postgres dan pgadmin4 di docker. Semoga bermanfaat.
Thanks gan atas tutorialnya sangat membantu
BalasHapussama-sama gan
Hapus