아래와 같이 PostgreSQL에서 공식 지원하는 '16'버전으로 Docker에 설치하고자 합니다.

CLI에서 아래의 명령어를 입력하여 Docker 이미지를 불러옵니다.
$ docker pull postgres:16
아래의 명령어를 입력하여 Docker 컨테이너를 생성합니다.
$ docker run -p 5432:5432 --name postgres-db \
-e POSTGRES_PASSWORD=123 \
-e TZ=Asia/Seoul \
-v /(데이터 경로)/pgdata:/var/lib/postgresql/data -d \
postgres:16
| 명령어 | 항목 | 설명 |
|---|---|---|
| -p | 5432:5432 | 내부 포트번호와 외부 포트번호를 연결 |
| -e | POSTGRES_PASSWORD=123 | (필수) 데이터베이스 비밀번호 |
| -e | TZ=Asia/Seoul | 데이터베이스 표준시간대 설정 |
| -v | /(데이터 경로)/pgdata:/var/lib/postgresql/data | 공유 볼륨 설정 Host PC의 pgdata 경로를 Container의 내부 data 경로로 사용 |
| -d | 컨테이너를 백그라운드로 실행 |
아래의 명령어를 입력하여 생성한 Docker 컨테이너에 접속합니다.
$ docker exec -it postgres-db /bin/bash
아래의 명령어를 입력하여 컨테이너 내 PostgreSQL에 접속합니다.
데이터베이스 계정ID는 "postgres"가 기본값입니다.
root@235890daf03d: /# psql -U postgres
아래의 명령어를 입력하여 새 데이터베이스를 생성합니다.
postgres=# create database test-db;
아래의 명령어를 입력하여 데이터베이스 목록을 조회합니다.
그리고 데이터베이스 목록에서 방금 생성한 새 데이터베이스가 있는지 확인합니다.
postgres=# \l
아래와 같이 Host PC 주소와 외부 포트번호로 접속합니다.
127.30.1.84:5432