Docker (3) - 컨테이너 병렬 실행(서로 다른 버전의 PostgreSQL)
Docker (3) - 컨테이너 병렬 실행(서로 다른 버전의 PostgreSQL)
postgres:16과 postgres:18을 각각 다른 host port로 실행가능
1. PostgreSQL 16, 18 동시 실행
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 16 버전 실행
docker run -d \
--name paperclip-pg16 \
-e POSTGRES_PASSWORD=postgres \
-e POSTGRES_DB=paperclip \
-p 15432:5432 \
-v paperclip-pg16-data:/var/lib/postgresql/data \
postgres:16
# 18 버전 실행
docker run -d \
--name paperclip-pg18 \
-e POSTGRES_PASSWORD=postgres \
-e POSTGRES_DB=paperclip \
-p 15433:5432 \
-v paperclip-pg18-data:/var/lib/postgresql \
postgres:18
다른 host port가 각각 컨테이너의 5432포트로 포트포워딩이 되는 것을 확인할 수 있다.
즉 컨테이너가 다르면 포트 번호를 같은 걸 쓸 수 있다. (둘다 각 컨테이너에서 5432포트)
host port번호는 구분이 되어야하므로 다른 포트 번호를 배정해야한다. 15432 -> 5432 15433 -> 5432
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.
