Drizzle | PostgreSQL 로컬 설정 방법
This guide assumes familiarity with:
  • 최신 Docker Desktop을 설치합니다. 운영 체제에 맞는 지침을 따르세요.

PostgreSQL 이미지 다운로드

Docker Hub에서 최신 PostgreSQL 이미지를 다운로드합니다. 터미널에서 docker pull postgres 명령어를 실행하여 Docker Hub에서 최신 Postgres 버전을 다운로드합니다:

docker pull postgres

또는 특정 태그로 원하는 버전을 다운로드할 수 있습니다:

docker pull postgres:15

postgres 이미지가 다운로드되면 Docker Desktop의 Images 탭에서 확인하거나 docker images 명령어로 확인할 수 있습니다:

docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
postgres     latest    75282fa229a1   6 weeks ago     453MB

Postgres 인스턴스 시작

새로운 PostgreSQL 컨테이너를 시작하려면 다음 명령어를 실행합니다:

docker run --name drizzle-postgres -e POSTGRES_PASSWORD=mypassword -d -p 5432:5432 postgres
  1. --name 옵션은 컨테이너에 drizzle-postgres라는 이름을 할당합니다.
  2. -e POSTGRES_PASSWORD= 옵션은 POSTGRES_PASSWORD 환경 변수를 지정된 값으로 설정합니다.
  3. -d 플래그는 컨테이너를 분리 모드(백그라운드)로 실행합니다.
  4. -p 옵션은 컨테이너의 5432 포트를 호스트 머신의 5432 포트에 매핑하여, 이 포트를 통해 호스트 시스템에서 PostgreSQL에 접근할 수 있도록 합니다.
  5. postgres 인수는 컨테이너에 사용할 이미지를 지정합니다. postgres:15와 같이 다른 버전을 지정할 수도 있습니다.

다음과 같은 다른 매개변수도 지정할 수 있습니다:

  1. -e POSTGRES_USER= 옵션은 POSTGRES_USER 환경 변수를 지정된 값으로 설정합니다. 이 값이 비어있으면 Postgres는 기본 사용자를 사용합니다. 대부분의 경우 postgres이며, Docker Desktop의 컨테이너 로그 또는 docker logs <container_name> 명령어로 확인할 수 있습니다.
  2. -e POSTGRES_DB= 옵션은 POSTGRES_DB 환경 변수를 지정된 값으로 설정합니다. 비어있으면 기본적으로 POSTGRES_USER 값을 사용합니다.

컨테이너가 실행 중인지 확인하려면 Docker Desktop의 Containers 탭을 확인하거나 docker ps 명령어를 사용합니다:

CONTAINER ID   IMAGE      COMMAND                  CREATED         STATUS         PORTS                    NAMES
df957c58a6a3   postgres   "docker-entrypoint.s…"   4 seconds ago   Up 3 seconds   0.0.0.0:5432->5432/tcp   drizzle-postgres

데이터베이스 URL 설정

PostgreSQL 데이터베이스에 연결하려면 데이터베이스 URL을 제공해야 합니다. URL 형식은 다음과 같습니다:

postgres://<user>:<password>@<host>:<port>/<database>

플레이스홀더를 실제 값으로 교체해야 합니다. 예를 들어, 생성된 컨테이너의 경우 URL은 다음과 같습니다:

postgres://postgres:mypassword@localhost:5432/postgres

이제 애플리케이션에서 이 URL을 사용하여 데이터베이스에 연결할 수 있습니다.