Infra/컨테이너

Docker Images & Containers

Surge100 2022. 8. 13. 13:46

Containers

컨테이너는 결국 애플리케이션, 웹사이트, 노드 서버 혹은 애플리케이션을 실행하는 전체 환경 등등 무엇이든 포함하는 작은 패키지이다. 즉, 컨테이너에는 소프트웨어 실행 유닛이 존재한다. 결국 그 유닛을 Container를 사용하는 입장에서 실행하게 된다.

 

도커로 작업할 때, Image라는 dissolver 개념도 필요하다. Image는 템플릿, 즉 Container의 블루 프린트가 될 것이기 때문이다. 

 

또한 이미지는 실제로 코드와 코드를 실행하는데 필요한 도구를 포함 한다.

 

이런 준비된 Image를 바탕으로 컨테이너가 실행되고 그때 작성된 코드가 실행 되게 한다.

 

*dissolver : 용해[분해, 분리]기 장치

우리는 모든 설정과 명령 코드가 포함된 이미지를 한번에 생성할 수 있다. 하지만 그 이미지를 기반으로 사용하여 여러개의 동일한 기능을 하는 Container를 만들 수 있다.

 

예를 들어, NodeJS 웹 서버 애플리케이션의 경우 Image를 한번만 정의하면, 다른 시스템과 다른 서버에서 여러 번 실행할 수 있다. Image는 모든 설정 명령과 코드가 포함된 공유가능한 패키지 이기 때문이고 Container는 그러한 Image의 구체적인 실행 인스턴스이기 때문이다.

 

즉 우리는 이미지를 기반으로 하는 Container를 실행하는 것이다. 이것이 핵심 기본 개념이며, 도커의 모든 것이다.

 

[출처 - https://www.udemy.com/share/106b8i3@uC-jrm0KnQjqGWtxFr4Pafx0cHSLajV1UnYtTipExbXTkI2OGPueJXMl7-KCFCk76w==/ ]