-
Docker 개념 정리ETC 2020. 9. 6. 16:03반응형
Docker란 컨테이너 기반의 오픈소스 가상화 플랫폼.
- 프로그램 + 실행환경을 컨테이너로 추상화 하고 컨테이너 별로 동일한 인터페이스를 제공하여 쉽게 사용할 수 있도록 한다.
- 컨테이너는 PC, Cloud 어떤 환경에서도 실행 가능하다.
Docker의 이미지
- 컨테이너 실행에 필요한 파일과 설정 값을 하나로 모아 놓은 것
- 이미지를 메모리에 올려 실행하면 컨테이너가 된다.
- 이미지는 Docker Hub에 등록하거나 직접 Docker Registry 저장소를 만들어서 관리할 수 있다.
컨테이너 관리
- 컨테이너 별로 레이어를 이루며 유니온 파일 시스템을 사용하여 여러개의 레이어를 묶어 하나의 파일 시스템으로 사용할 수 있다. (기존 레이어는 재사용 하고 없는 것만 다운로드 한다.)
- 컨테이너 생성시 각 이미지 레이어에 대한 읽기/쓰기 레이어를 추가하여 새롭게 생성되는 파일과 수정되는 데이터들은 읽기/쓰기 레이어에 저장한다. 따라서 동일 컨테이너를 여러번 사용하게 되어도 최소한의 용량만 사용한다.
이미지 관리
- docker 이미지는 url 방식으로 관리하고 tag를 붙일 수 있다.
- (e.g) ubuntu 14.04의 이미지 주소
- docker.io/library/ubuntu:14.04 또는 docker.io/library/ubuntu:trusty
- 이미지 주소에서 docker.io/library/ 를 생략할 수 있다. 따라서 예로 든 이미지 주소는 ubuntu:14.04로 표현할 수 있다.
- docker 파일에 Domain-spcific language(DSL)을 사용하여 이미지 생성과정을 기술하고, 이를 사용하여 이미지를 생성한다.
Docker Hub
공개 이미지를 무료로 관리 해주는 cloud service이다.
Docker 설치하기
curl -fsSL https://get.docker.com/ | sudo sh
'ETC' 카테고리의 다른 글
로지텍 keys to go 사용기 (0) 2021.06.27 IP주소 확인 (0) 2020.12.08 빌더 패턴 (0) 2020.10.12 vim 커스터마이징 (0) 2020.09.21 Blink 앱을 활용한 iPad 코딩 (3) 2020.09.17