-
Docker - Data Management공부합시다!/Container 2022. 3. 8. 14:36728x90
음. 또 몇일 건너뛰고 Docker로 돌아오네요!
세상은 넓고 공부할 것은 많다!
그럼 Docker에서 Data관리를 위해 제공하는 방법들을 살펴보겠습니다.
1. Container 에서 사용하는 Data를 Host내에 저장하는 세가지 방법
1.1. Volumes
1.1.1. Host파일 시스템 내의 지정된 영역( /var/lib/docker/volumes)을 Docker가 관리 및 사용
1.1.2. Docker가 아닌 다른 Process는 해당 영역 접근 불가능
1.2. Bind Mounts
1.2.1. Host 파일 시스템 자체를 사용
1.2.2. 중요한 시스템 파이리나 디렉토리 접근 가능
1.2.3. Host와 Container가 설정 파일 공유
1.2.4. Host 에서 개발 후 Container로 배포하는 방식 상요
1.3. tmpfs Mounts
1.3.1. Host 파일시스템이 아닌 Memory에 저장하는 방식
2. Docker Image
2.1. Docker Image는 여러개의 Reda Only Layer로 구성
2.2. Container 생성 시 RW가 가능한 Container Layer 생성
2.3. 변경 사항은 Container Layer 저장
2.4. Read시 Image와 Container Layer 조합
2.5. Container가 삭제되면 Container Layer도 삭제, 단 기존 Image는 변경되지 않고 유지됨
2.6. 하나의 Image로 여러개의 Container 구성 및 사용가능
2.7. Container간 Data가 공유가 필요한 경우 Docker Volume에 저장하고 Container로 Mount
2.8. Copy On Writer(CoW) 방식으로 파일 관리
2.8.1. 효율적으로 파일을 공유하고 복사
2.8.2. 파일 또는 디렉토리를 읽기만 할때에는 기존 파일을 참조
2.8.3. 수정을 해야하는 경우에만 파일을 Container Layer로 복사해서 수정
2.8.4. 필요한 경우에만 복사가 됨으로 데이터 중복이 없고 효율적으로 사용 가능.
3. Linux 배포판별 Storage Driver
이론적인 부분이지만 중요합니다.
한번 더 읽고 넘어가세요!
Have a nice day!
728x90'공부합시다! > Container' 카테고리의 다른 글
Docker : Container Life Cycle (0) 2022.05.21 Docker : NGINX (0) 2022.05.20 Docker 개요 - 3 (0) 2022.03.02 Docker Image (0) 2022.03.01 Docker(Container) 기술 : namespace & cgroups (0) 2022.02.28