[Docker] Postgres 18+ 버전 IMAGE 부터 PGDATA Mount 경로가 변경됐습니다!

식빵·2025년 11월 28일

docker reference

목록 보기
14/14

🩻 기본 PGDATA 경로 변경

postgres 18 이상 버전의 이미지에서부터 기본으로 사용하던 PGDATA 의 경로가 변경됐습니다.

기존의 17 이하 버전의 PGDATA : /var/lib/postgresql/data
변경된 18 이상 버전의 PGDATA : /var/lib/postgresql/<POSTGRES_MAJOR_VER>/docker



📌 docker run -v 작성법의 변화

많은 분들이 컨테이너 삭제 후에도 데이터를 영속적으로 유지하기 위해서
PGDATA 경로를 docker run 명령어 입력 시에 -v 옵션으로
MOUNT 하는 경우가 많습니다.

하지만 이번 PGDATA 경로가 바뀌었으므로 이와 관련해서
-v 옵션 작성법도 바뀌어야 합니다.


🎯 17 이하의 버전

docker run -e POSTGRES_PASSWORD=postgres -p 5432:5432 \
	       -v './postgres_data:/var/lib/postgresql/data' \
           --name postgres postgres:17

🎯 18 이상의 버전 - 방법(1)

docker run -e POSTGRES_PASSWORD=postgres -p 5432:5432 \
	       -v './postgres_data:/var/lib/postgresql/18/docker' \
           --name postgres postgres:18

🎯 18 이상의 버전 - 방법(2)

PGDATA 경로를 17 이하 버전과 동일하게 사용하고 싶으신 분들은
단순하게 -e PGDATA=/var/lib/postgresql/data 만 추가하고,
-v 옵션을 그에 맞춰서 작성하면 됩니다

docker run -e PGDATA=/var/lib/postgresql/data \
           -e POSTGRES_PASSWORD=postgres -p 5432:5432 \
           -v './postgres_data:/var/lib/postgresql/data' \
           --name postgres postgres:18

이렇게 작성하면 어떤 버전을 사용해도 동일한 방식으로 작성이 가능해집니다!



이상으로 글을 마치겠습니다!


✨ 참고링크

profile
백엔드 개발자로 일하고 있는 식빵(🍞)입니다.

0개의 댓글