04 Docker 볼륨과 네트워킹

Jiyeong·2022년 6월 10일
0

Docker

목록 보기
4/6

Q1. Docker는 데이터를 안전하게 존속시킬 수 있는 방식으로 volume, bind mounts, tmpfs의 3가지 방식 제공

Q2. 도커 컨테이너는 기본적으로 eth0와 lo 네트워크 인터페이스를 가짐.

Docker 볼륨과 데이터 관리

도커의 이미지로 컨테이너를 생성하면 이미지는 읽기 전용으로 쓰기가 불가능.
-> 컨테이너 계층에 변화되는 데이터들이 저장되는데, 이 경우 컨테이너가 삭제되면 그동안 저장된 운용데이터들이 함께 삭제

볼륨

  • 도커 컨테이너에 의해 생성되고 사용되는 데이터를 영속하기 위해 선호되는 메커니즘
  • 바인드 마운트는 호스트 머신의 디렉토리 구조에 따라 달라지지만, 볼륨은 도커에 의해 완전히 관리됨

장점

  • Mount시 이름을 명시적으로 지정해 사용 가능 / 익명 가능
  • 익명 볼륨은 처음 마운드 시 명시적으로 이름이 부여되지 않으므로 도커는 주어진 도커 호스트 내에서 고유한 임의의 이름을 해당 볼륨에 부여
  • 이름이 지정된 방식과 상관 없이 볼륨은 동일한 방식으로 작동
  • 원격 호스트와 Cloud Provider가 데이터를 저장할 수 있는 볼륨 드라이버 사용 지원

bind mount

tmpfs mount

Docker 네트워크 구축

도커 네트워크 구조

  • 컨테이너는 기본적으로 eth0와 lo 네트워크 인터페이스를 가짐
  • 컨테이너는 내부 IP를 순차적으로 할당해 컨테이너가 재시작 될 때마다 변경될 수 있음
  • 만약 외부와 연결해야 할 경우 호스트에 veth(=virtual eth)라는 네트워크 인터페이스를 생성해 컨테이너의 eth와 연결.
    -> veth 인터페이스는 사용자가 직접 생성할 필요 없이 도커 엔진에 의해 자동 생성
  • veth 인터페이스 뿐만 아니라 docker()라는 브리지도 있는데, 이는 veth 인터페이스와 바인딩되어 호스트의 eth 인터페이스와 연결


Summary

profile
깃스타가 되고 싶은 벨플루언서

0개의 댓글