도커

도커 공부 시작

라리음 2022. 5. 24. 20:49

 

도커를 처음 접해보면서 틀린 내용이 많이 포함될 수 있습니다.

 

글들은 따라하며 배우는 도커와 CI환경 강의를 들으면서 정리하는 것이라 뒤죽박죽에 내용이 적습니다.

필요한 부분은 앞으로 계속 수정해가면서 작성하려고 합니다.

 

 

 

 

왜 도커를 사용하는가?

 

도커를 쓰는 이유:

 

 

일반적으로 프로그램을 다운 받는 것과 도커를 이용해 다운을 받는 것은 용이성 및 편리성에서 확실한 차이가 있음!

 

 

 

 

 

* 예상치 못한 에러도 덜 발생하며, 설치하는 과정도 훨씬 간단해짐!

 

 

 

 

 

도커란 무엇인가?

 

- 컨테이너를 사용하여 응용프로그램을 더 쉽게 만들고 배포하고 실행할 수 있도록 설계된 도구이며

  컨테이너 기반의 오픈소스 가상화 플랫폼임.

 

 

 

여기서 컨테이너는 무엇?

 

- 코드와 모든 종속성을 패키지화하여 응용 프로그램이 한 컴퓨팅 환경에서 다른 컴퓨팅 환경으로 빠르고

  안정적으로 실행되도록 하는 소프트웨어의 표준 단위이다.

  즉 컨테이너 안에 다양한 프로그램, 실행환경을 컨테이너로 추상화하고 동일한 인터페이스를 제공하여 프로그램의

  배포 및 관리를 단순하게 해줌. AWS, Azure, GCP등 어디에서든 실행 가능하게 해줌.

 

 

 

 

 

도커 이미지 : 프로그램을 싱행하는데 필요한 설정이나 종속성들을 갖고있다.

도커 컨테이너 : 이미지의 인스턴스이며, 프로그램을 실행한다.

 

 

 

 

docker run hello-world를 실행하면

로컬에서 (이미지 cache)에 그러한 이미지가 없기에 도커 허브에서 가져옴!!

 

처음에는 unable이 뜨지만 두 번째부터는 정상적으로 hello-world가 작동함.

 

 

처음 쳤을 때

 

두 번째 쳤을 때

 

 

 

 

Docker      vs       VM

 

 

 

 

공통점

 

- 도커 컨테이너와 가상 머신은 기본 하드웨어에서 격리된 환경 내에서 애플리케이션을 배치하는 방법임.

 

 

차이점

 

- 도커 컨테이너가 하이퍼바이저와 게스트 OS가 필요하지 않으므로 더 가벼움.

- 가장 큰 차이점은 격리된 환경을 얼마나 격리를 시키는지의 차이.

- 도커는 다른 컨테이너와 동일한 커널을 공유함.