어디에 쓰이나요?
- 사용자 정보, 게시글, 주문 내역 등 구조화된 데이터를 저장할 때
- Dify, Langfuse, n8n 등 대부분의 애플리케이션이 기본 데이터베이스로 사용
- 트랜잭션, 외래 키 등 데이터 무결성이 필요한 경우
이 가이드에서 다루는 Dify, Langfuse, Langflow, n8n 모두 내부적으로 PostgreSQL을 사용합니다. 각 서비스의 docker-compose.yml에 PostgreSQL이 포함되어 있으므로, 별도로 설치할 필요 없이 해당 서비스를 실행하면 됩니다.
Docker Compose
docker-compose.yml
실행
접속 확인
postgres=# 프롬프트가 표시됩니다.
기본 정보
| 항목 | 값 |
|---|---|
| 포트 | 5432 |
| 기본 사용자 | postgres |
| 기본 비밀번호 | changeme |
| 데이터 저장 경로 | postgres_data 볼륨 |
환경 변수
| 변수 | 설명 | 기본값 |
|---|---|---|
POSTGRES_USER | 슈퍼유저 이름 | postgres |
POSTGRES_PASSWORD | 슈퍼유저 비밀번호 | (필수) |
POSTGRES_DB | 기본 데이터베이스 이름 | POSTGRES_USER 값 |
PGDATA | 데이터 디렉토리 경로 | /var/lib/postgresql/data |
라이선스
| 구분 | 내용 |
|---|---|
| 라이선스 | PostgreSQL License (BSD 계열) |
| 개인 사용 | 자유롭게 사용 가능 |
| 상업적 사용 | 자유롭게 사용 가능, 수정/재배포 제한 없음 |
참고
설치 점검 목록
docker compose up -d후docker compose ps로 컨테이너 상태를 확인했습니다.- 기본 포트/계정/비밀번호를 문서대로 점검했습니다.
- 운영용으로 사용할 때 기본 비밀번호/시크릿 값을 변경했습니다.
- 장애 분석을 위해
docker compose logs -f확인 방법을 숙지했습니다.
문제 해결 가이드
- 컨테이너가 실행되지 않으면
docker compose logs -f로 오류 원인을 먼저 확인합니다. - 포트 충돌이 나면 기존 프로세스를 종료하거나 포트 매핑 값을 변경합니다.
- 이미지 pull 실패 시 네트워크 연결 및 레지스트리 접근 권한을 확인합니다.
- 설정 변경 후 문제가 지속되면
docker compose down후 다시up -d로 재기동합니다.
관련 문서
Setup 홈
운영체제별 설치 흐름을 다시 확인합니다.
다음: Redis
다음 설치 단계를 이어서 진행합니다.

