인프런 커뮤니티 질문&답변

xvds1님의 프로필 이미지
xvds1

작성한 질문수

[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core

docker compose / postgres 부분 질문드려요

작성

·

184

0

스크린샷 2024-02-02 190549.png

accept connections 까지 확인 후에도 data 폴더 안에 아무것도 생성되지 않아서요!
질문드립니다!!

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

Docker Compose를 사용하여 PostgreSQL 데이터베이스 서비스를 설정하고 계시는데, data 폴더에 아무것도 생성되지 않는 것 관련하여 몇 가지 확인해볼 사항이 있습니다.

  1. 데이터 볼륨이 정확하게 매핑되었는지 확인해보세요. docker-compose.yaml 파일에서 볼륨을 다음과 같이 명시했습니다.
    ”`yaml
    volumes:

    • ./data:/var/lib/postgresql/data

    이 설정은 호스트의./data디렉토리를 컨테이너의/var/lib/postgresql/data`로 매핑합니다. 호스트 디렉토리가 올바른 위치에 있는지, 그리고 권한 문제가 없는지 확인하세요.

  2. PostgreSQL 컨테이너가 정상적으로 시작되었는지 로그를 통해 다시 확인해보세요. 데이터베이스가 초기화되고 데이터 파일을 생성할 때 어떤 문제도 발생하지 않았는지 확인해야 합니다.

  3. Docker Compose가 사용하는 PostgreSQL 이미지에 대한 추가 설정이 필요하지 않은지 문서를 확인하세요. 예를 들어, SSL 연결을 위한 설정이 따로 필요할 수 있습니다.

Spring Boot Reference Documentation에서는 다음과 같이 Docker Compose를 커스터마이징하는 방법에 대해 설명하고 있습니다.

services:
  postgres:
    image: 'postgres:15.3'
    environment:
      - 'POSTGRES_USER=myuser'
      - 'POSTGRES_PASSWORD=secret'
      - 'POSTGRES_DB=mydb'
    ports:
      - '5432:5432'
    labels:
      org.springframework.boot.jdbc.parameters: 'ssl=true&sslmode=require'

이 설정을 통해 JDBC URL이 커스터마이징된 예시를 볼 수 있습니다. 이 문서는 아래 링크에서 확인하실 수 있습니다.
- Spring Boot Documentation - Customizing the JDBC URL

위의 사항들을 확인하고 문제를 해결해보시기 바랍니다. 추가로 도움이 필요하시면, 구체적인 docker-compose.yaml 파일의 설정과 볼륨 설정, 그리고 관련 로그를 같이 제공하시면 더욱 정확한 도움을 드릴 수 있을 것입니다.

xvds1님의 프로필 이미지
xvds1

작성한 질문수

질문하기