도커 완벽 정리

JACKJACK·2022년 10월 20일
1
post-thumbnail

📝도커란?

도커는 독립된 환경을 만들어 하드웨어를 효율적으로 사용하기 위한 가상화 플랫폼이다.

  • 도커의 등장배경 - 도커는 컨테이너 기술을 이용해 가상화를 시켜 프로세스를 격리한다. 기존에는 Host OS가 Hypervisor를 사용해 가상머신과 Guest OS를 만들어 사용하고 프로세스를 격리해 자원을 효율적으로 사용 했지만, Hypervisor를 항상 거쳐야 했기 때문에 속도가 저하되었다. 도커에서는 이러한 과정 없이 Host OS의 커널을 공유하면서 필요한 프로세스만 격리하는 방식을 사용해 속도 저하 문제를 해결 했다.

  • 또한 도커의 컨테이너 안에 라이브러리, 코드, 런타임 등 소프트웨어 실행에 필요한 모든 것들을 포함하기 때문에, 어느 컴퓨터에서든 도커를 실행하면 어플리케이션의 환경을 일정하게 유지시킨 채 실행이 가능하다.




📝도커의 실행 프로세스

1. 도커파일을 통해 이미지(어플리케이션과 해당 환경을 패키징 한 것)를 생성

2. 다른사람이나 컴퓨터 간 공유를 위해 레지스트리(도커허브, ECR, ...)에 도커 이미지를 저장

3. 레지스트리에 이미지(여러 레이어로 구성)들의 레이어가 겹치는 부분이 있다면 신규 레이어만 저장해 리소스를 효율적으로 사용. 이 때 레이어는 읽기 전용이다.

4. 도커에서 이미지 풀, 실행시켜 컨테이너(프로세스)를 실행




💡결론

- 도커는 하드웨어를 효율적으로 사용하기 위해 컨테이너 기술로 프로세스를 격리하는 가상화 플랫폼

- 도커 프로세스) 어플리케이션, 개발 환경 패키징 -> 이미지(레이어로 구성) 빌드 -> 이미지 레지스트리 적재 -> 이미지 풀 -> 컨테이너(Host OS) 실행

profile
러닝커브를 빠르게 높이자🎢

0개의 댓글