컴퓨터 공학 & 통신

[개념 정리] 클라우드 - 컨테이너, 도커

왈왈디 2023. 6. 29. 22:53
728x90

IaaS와 PaaS의 장점만 모은 컨테이너와 도커에 대해 알아보자.

 

도커와 컨테이너

컨테이너

컨테이너는 애플리케이션이 한 컴퓨팅 환경에서 다른 컴퓨팅 환경으로 빠르고 안정적으로 옮겨 실행될 수 있도록

모든 종속성을 패키징하는 소프트웨어의 표준 단위이다.

컨테이너는 OS를 공유하기 때문에 빠르고, 경량화되어 있으며, 격리성도 훌륭하다.

그러나 하나의 OS를 공유하기 때문에 OS에 문제가 생기면 여러 앱에 영향을 미칠 수 있다. 

 

도커

  IaaS PaaS Docker
유연성 높음 낮음 높음
이식성 높음 낮음 높음
운영비 효율 낮음 높음 높음

도커는 컨테이너에 필요한 기능을 거의 모두 제공하는 플랫폼이다.

애플리케이션 구동에 필요한 환경 설정 관련 절차를 도커 파일에 작성하고,

그 후 빌드하면 도커 이미지가 생성된다.

도커 이미지를 실행시키면 도커 컨테이너가 만들어진다.

이렇게 준비가 되면, 도커 컨테이너에 설정된 프로그램, 데이터 등이 실제 컴퓨팅 자원 위에서 돌아가게 된다.

 

도커 컨테이너 실행 과정

1. 도커  파일

: 패키지, 환경 변수 설정 등을 기록한 텍스트 파일이다.

이를 빌드해 도커 이미지로 변환한다.

 

2. 도커 이미지

: 컨테이너 실행에 필요한 파일과 설정값, 데이터 등을 포함하는 상태값이다. 불변한다.

하나의 이미지로 여러 컨테이너를 생성할 수 있다.

컨테이너가 중단/삭제 되더라도 이미지는 독립적으로 그대로 존재한다.

 

3. 도커 컨테이너

: 컨테이가 실행되면 도커 이미지에 설정된 프로그램, 데이터 등이 실제 컴퓨팅 자원과 연결된다.

 

도커 활용

도커 컨테이너를 기반으로 클라우드에 컨테이너를 배포하여 많은 서비스가 운영되고 있다.

 

참고: inflearn 강의 'CS 지식의 정석 - 큰돌'

728x90