MySQL chown: changing ownership of 'var/lib/mysql': Operation not permitted 문제 해결
docker container는 외부와 격리되어 컨테이너 내부에 데이터를 관리합니다. 따라서 컨테이너가 파기되면 데이터는 사라집니다. 웹 서비스를 docker로 올릴 때 MySQL과 같은 데이터베이스를 docker에 올리는 경우 회원들의 정보가 사라지는 아찔한 경험을 할 수 있습니다. 따라서 이를 방지하기 위해 별도의 볼륨을 설정해서 데이터를 저장하여 docker-compose.yml에 경로를 저장합니다.
docker를 실행할 때 위의 오류를 만나게 됩니다. 이런 경우 MySQL 이미지가 실행되지 않으며 10초 간격으로 죽었다가 다시 실행했다가 반복 되는 것을 볼 수 있습니다.
해결 방법 1
chown
을 붙입니다.
volumes:
- chown 999:0 /private/etc/mysql:/var/lib/mysql:rw
해결 방법 2
rw
를 추가합니다.
volumes:
- /private/etc/mysql:/var/lib/mysql:rw
해결 방법 3
본 글을 쓰는 이유이기도 합니다. 위의 두 방법은 구글에 검색했을 때 나오는 방법이었지만 문제를 해결하지 못했습니다. 저는 --user 1000
를 추가함으로 문제를 해결했습니다.
volumes:
- /private/etc/mysql:/var/lib/mysql --user 1000
'Computer Science > DevOps' 카테고리의 다른 글
dial tcp 127.0.0.1:3306: connect: connection refused 에러 해결 (2) | 2020.07.17 |
---|---|
Gin-gonic Hot Reloading 방법 (0) | 2020.07.11 |
Docker를 이용하여 클라우드에 Go 배포하기 (0) | 2020.06.27 |
가상 스타트업으로 알아보는 MSA이야기 (0) | 2020.05.11 |
도커 이미지 기본 명렁어 (0) | 2020.05.10 |