Merhabalar,
Ne zaman makinamda postgres‘e ihtiyacım olsa elbette docker ile kullanmaya çalışıyorum, çünkü her zaman ihtiyacım olmuyor ve biraz daha kontrol altında olması iyi. Fakat sonrasonda pgAdmin ile admin işlemlerini yapmak da yeterince yoruyor açıkcası. Aşağıdaki pg-compose.yaml ile hem postgres’i, pgadmin’i (pgAdmin4) hem de postgres ile oldukça hafif ama yetenekli bir ürün de yanında geliyor (+ adminer da).
version: ‘3.1’
services:
postgres:
image: postgres:13.4
environment:
POSTGRES_PASSWORD: postgres
POSTGRES_USER: postgres
ports:
– 5432:5432
volumes:
– data:/var/lib/postgresql/data
adminer:
image: adminer
ports:
– 8080:8080
deploy:
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
window: 5s
pgweb:
image: dpage/pgadmin4
environment:
PGADMIN_DEFAULT_EMAIL: user@domain.com
PGADMIN_DEFAULT_PASSWORD: postgres
PGADMIN_LISTEN_PORT: 8081
ports:
– 8081:8081
volumes:
– admin_data:/var/lib/pgadmin
deploy:
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
window: 5s
volumes:
data:
admin_data:
Özellikle port bilgilerini değiştirmemeye çalıştım. Fakat 8080/8081/5432 portlarınız kullanıyor ise bunları yaml içerisinden güncelleyin.
Kurulum için;
docker stack deploy pg -c ./pg-compose.yaml
İlgili postgres, pgweb ve adminer‘ı kaldırmak için;
docker stack rm pg
kullanılmalıdır.
Sevgiler.