[CS 영상] 도커 한방에 정리 🐳 (모든 개발자들이 배워보고 싶어 하는 툴!) + 실습

2023. 4. 12. 18:32CS 지식

https://www.youtube.com/watch?v=LXJhA3VWXFA&t=759s 

 

Docker

Docker 개념

  • Application resource, System Tools, Dependencies 등 애플리케이션을 실행하기 위해 필요한 것들을 하나로 묶어서 다른 서버나 pc에 쉽게 배포하고 안정적으로 구동할 수 있게 도와주는 툴
  • HyperVisor 과 Docker이러한 vm에서 경량화된 컨셉을 컨테이너라고 한다.이때 Container Engine 중 가장 인기쟁이가 Docker이다.
  • 컨테이너는 Host Os(대부분 window,mac) 에서 Container Engine을 설치하기만 하면 개별적인 컨테이너를 만들어서 애플리케이션을 고립된 환경에서 구동할 수 있도록 해준다.
  • HyperVisor는 virtualBox와 vmware 등이 있다. 각각 운영체제 위에 운영체제를 포함한 환경을 만들 수 있다. 하지만 운영체제를 포함하기 때문에 무겁다.

Docker 동작 순서

  • 도커에서 컨테이너를 만들기 위해서는 Dockerfile → image → 컨테이너 순서로 진행할 수 있다.
  • Dockerfile 에서는 우리가 만들 애플리케이션에 대한 환경 설정 등을 해줄 수 있다.
  • image는 애플리케이션이 실행되기 위해 필요한 것들을 포함하고 있다.
  • 컨테이너는 이러한 이미지가 개별적인 환경 안에서 동작할 수 있게 고립시켜주는 친구다.

Docker 배포 원리

  • 로컬에서 이미지를 만들어 Container Registry 라는 서버에 작업물을 push 할 수 있다.
  • 이때 도커가 이용하는 Container Registry는 docker hub 라고 하는 서버이다.
  • 추가적으로 github에서도 github Packages 가 있다.
  • 그리고 private 한 Container Registry는 구글 Cloud 등이 있다.