반응형
docker compose로 postgresql를 띄워서 테스트 해볼 일이 생겨서 간단히 실행을 해봤는데 아래와 같은 디렉토리 permission 에러가 발생했다.
Data directory "/var/lib/postgresql/data" has invalid permissions
docker compose 파일은 아래와 같이 작성이 된 상태였다.
version: '3'
services:
postgres:
image: postgres
volumes:
- ./postgres_data:/var/lib/postgresql/data
environment:
POSTGRES_DB: postgre
POSTGRES_USER: postgre
POSTGRES_PASSWORD: password
...
일반적으로 chmod, chown 등으로 디렉토리 설정을 하면 해결이 되었는데 이번에는 동일한 에러가 계속 발생을 했다. 계속 이부분에 신경을 쓸 수 없어서 아래와 같이 Named Volume으로 설정하여 해결했다.
version: '3'
volumes:
postgres_data:
driver: local
services:
postgres:
image: postgres
volumes:
- postgres_data:/var/lib/postgresql/data # volumn명 지정으로 변경
environment:
POSTGRES_DB: postgre
POSTGRES_USER: postgre
POSTGRES_PASSWORD: password
...
docker 실행 시 디렉토리에 대한 Permission이나 Ownership 문제 발생 시 별도 volume을 지정해서 해결하는 것도 하나의 방법이다.
반응형
'개발 > Docker&kubernetes' 카테고리의 다른 글
[Rancher Desktop] Port Forwarding 설정 - 쿠버네티스(k8s) pod, service 실행하고 접속하기 (0) | 2024.05.23 |
---|---|
bad CPU type in executable: kubectl - Mac Rancher Desktop (1) | 2024.03.26 |
Docker로 MariaDB 설치하기 (0) | 2024.03.18 |
docker permission denied 해결 (0) | 2024.02.12 |
MongoDB docker 설치 (0) | 2023.09.16 |
댓글