[Docker] Postgresql 설치하기

버전 선택하기

우선, 설치할 Postgresql의 버전을 골라야 한다. Docker로 설치 가능한 Postgresql의 버전은 아래의 링크를 통해 확인할 수 있다.

https://hub.docker.com/_/postgres

참고로, 현재(2024/08/17)를 기준으로 설치 가능한 Postgresql 버전은 9부터 16까지다. 17 버전도 존재하기는 하지만 아직 베타 버전 뿐이다.

Docker 명령어를 이용해 설치하기

아래의 명령어를 실행해 Postgresql을 설치한다.

# docker run -d \
  --name postgresql \
  --restart always \
  -p 5432:5432 \
  -e POSTGRES_PASSWORD=password \
  -e TZ=Asia/Seoul \
  -v /home/postgresql/data:/var/lib/postgresql/data \
  -d postgres:15

그 외에 -e 옵션을 통해 추가적으로 자주 쓰이는 옵션은 POSTGRES_USERPOSTGRES_DB 정도가 있다. POSTGRES_USER는 기본 생성되는 계정의 계정 명을 설정할 때, POSTGRES_DB는 기본 생성되는 데이터베이스의 이름을 설정할 때 사용된다.

참고로 POSTGRES_USER의 기본 값은 postgres이며 POSTGRES_DB의 기본 값은 POSTGRES_USER의 값을 따라간다.

나머지 옵션은 아래의 링크를 통해 확인할 수 있다.

https://hub.docker.com/_/postgres

Docker compose를 이용해 설치하기

우선 다음과 같이 docker-compose.yml을 작성한다.

version: '3'
services:
  db:
    image: postgres:15
    container_name: postgresql
    restart: always
    enviroment:
      - POSTGRES_PASSWORD=password
      - TZ=Asia/Seoul
    ports:
      - '5432:5432'
    volumes:
      - /home/postgresql/data:/var/lib/postgresql/data
    

해당 내용은 'Docker 명령어를 이용해 설치하기'와 동일한 옵션으로 작성했다

그 다음, 해당 docker-compose.yml이 존재하는 디렉토리 상에서 다음 명령어를 입력한다.

# docker compose up -d

-d는 백그라운드에서 실행하는 옵션이다