도커와 컨테이너 사용 장점 :
재설치할 필요 없이 어플리케이션에서 가져올 수 있다.
이미지 공유 두가지 주요방식 :
- 도커파일공유 : 도커파일과 이 어플리케이션에 속한 소스코드 제공하면 자체이미지 빌드하고 이를 사용하여 컨테이너 실행 가능하다.
- 따로 빌드해야하고 주변코드와 폴더구조도 필요하다.
- 빌드된전체이미지공유 / 이미지 다운만 받으면되고, 따로 빌드가 필요없다.
완성된이미지 공유하는방법
도커허브(공식도커 레지스토리) 또는 개인레지스트리 - docker push 이미지네임
공유
docker pull 이미지네임
푸쉬된이미지 사용가능
(명령에 공급자의 url이 포함되어야한다._
- 가장중요한 도커의 핵심중 하나는 도커는 이미지와 컨테이너에 관한 모든것이라는것 이다.
이미지는
템플릿 컨테이너의 블루프린트, 하나의 동일한 이미지를 기반으로 하는 여러 컨테이너를 실행할 수 있으며, 다양한 컨테이너를 위해 여러 이미지를 가질 수도 있다.
컨테이너는 이미지위헤 작은 레이어로 효율적인 방식으로 실행된다. 컨테이너가아닌 이미지에 저장된 코드와 환경을 사용하여 이미지의 도움으로 설정 및 구성된 애플리케이션을 실행한다. <- 이미지와 컨테이너간의 작업이 이런식으로 분할된다.
동일한 어플리케이션을 실행하는 여러컨테이너가 시스템에서 매우 적은 공간을 차지하며 분리되어 실행될 수 있는 방법임. 이미지는 docker pull
로 다운되거나,
자체이미지를 생성할 때는 Dockerfile의 도움으로 생성된다.
Dockerfile은 docker build
로 새 이미지 구축한다. Dockerfile에 넣은 명령으로 이미지는 여러 레이어를 만든다. 레이어는 빌드 속도를 최적화 하기위해 존재한다.
도커는 레이어를 캐시할 수 있고 그것은 재사용성에 도움된다.(변경사항이없으면 재빌드할필요없으니까)