서버 & 웹 개발 노트/Docker
[ Docker ] Docker Volume (도커 볼륨)
L.Joey
2024. 9. 1. 21:12
도커의 동작방식
- 이미지를 다운로드하여 컨테이너를 실행하는 방식
- 기존에 실행 중인 컨테이너에 업데이트 사항이 있으면, 필요한 이미지를 생성하여 새로운 컨테이너를 실행한다.
( 즉, 컨테이너의 파일 시스템이 초기화된다. 기존의 컨테이너를 수정하지 않음)
→ 업데이트를 할시 MySQL과 같은 데이터베이스에 저장된 데이터가 있으면 손실되는 문제가 발생
Volume 이라는 방식을 도입
도커에서 볼륨이란 :
- 도커 컨테이너에서 데이터를 영속적으로 저장하기 위한 방법
- 컨테이너 자체의 저장 공간을 사용하지 않고, 호스트 자체의 저장 공간을 공유해서 사용하는 형태
명령어
$ docker run -v [호스트의 디렉토리 절대경로]:[컨테이너의 디렉토리 절대경로] [이미지명]:[태그명]
명령어 작동 방식
- [호스트의 디렉토리 절대 경로] 에
- 디렉토리가 이미 존재할 경우 :
- 호스트의 디렉터리가 컨테이너의 디렉터리를 덮어씌운다.
- 디렉토리가 없는 경우:
- 호스트의 디렉터리 절대 경로에 디렉터리를 새로 만든다
- 컨테이너의 디렉터리에 있는 파일들을 호스트의 디렉터리로 복사해온다.
- 디렉토리가 이미 존재할 경우 :
[출처]