Docker로 Postgres를 구동하고 띄워서 작업을 하고 있다.
그러기 위해 Docker-compose.yml 파일을 다음같이 작성하고 진행하였다.
environment로 POSTGRES_USER, POSTGRES_PASSWORD, POSTGRES_DB 등을 설정하였다.
db: # 서비스 명
image: postgres:14.1 # 사용할 이미지
restart: always
container_name: jem_postgres # 컨테이너 이름 설정
env_file:
- .env
volumes:
- ${PWD}/db/database:/var/lib/postgresql/data
ports:
- '5432:5432'
분명 잘 설정하고 접속을 하려는데... 자꾸 password authentication fails and role 'postgres' does not exist.
내가 user 만들어서 해도 그 user없다고 하고 안만들고 postgres로 들어가도 없다고 뜬다....
소스에 보이지만 볼륨을 사용 중이다.
해당 볼륨이 비어 있는 경우에만 데이터베이스가 작성됩니다.
그렇지 않으면 해당 위치에서 찾은 데이터베이스를 재사용합니다.
해당 데이터베이스가 POSTGRES_USER의 다른 설정에서 생성된 경우, 예상하는 사용자가 해당 데이터베이스에 없습니다.
그래서... 지금껏 이전에 만들어 둔게 캐시?개념처럼 남아서 적용이 안되고 난리를 쳤던것 ㅠㅠ
로컬의 볼륨 디렉토리를 삭제하고 다시 실행시켰습니다.
아주 잘 됩니다!!ㅎㅎㅎ