Develop/Docker

Docker

Gr00t 2021. 2. 2. 09:40

도커란?

도커는 컨테이너 기반의 오픈소스 가상화 플랫폼이다.

화물에 대한 규격을 컨테이너라고 부른다. 도커에서 컨테이너 역시 같은 의미를 가진다. 담기는 것은 무엇이든 컨테이너라는 같은 규격안에 존재하므로 무엇을 담던지 옮기기 쉽고 시간 또한 절약된다.

도커는 이런 컨테이너 방식의 가상화를 통해서 하나의 규격을 제공하며 컨테이너들을 관리할 수 있는 기능들을 제공해주는 플랫폼이다.

 


컨테이너와 이미지

컨테이너는 프로세스를 격리시켜 동작하게 하는 기술이다. 기존에 존재했던 OS 가상화 방식의 무겁고 느리다는 단점을 보완하며 프로세스만을 격리시키기때문에 성능의 향상이 높다는 장점을 가진다.

서버 하나에 가상머신 여러개를 올리는 것을 버거운 일일 수 밖에 없지만, 컨테이너 여러개를 올리고 실행하는 것은 성능적 손실이 거의 없다. 이는 컨테이너가 서로 영향을 미치지 않고 독립적으로 실행되기 때문이다.

이미지는 컨테이너 실행에 필요한 파일과 설정 값 등을 포함하고 있는 것이다. 쉽게 생각하면 이미지를 실행시킨 것이 컨테이너고 실행을 위한 모든 값을 가지고 있기 때문에 추가적인 설정이 불필요하며 여러 컨테이너를 동시에 실행시킬 수 있도록 만드는 것이다.

이미지 파일은 Docker Hub나 Docker Registry를 통해 공유가 가능하고 한번만 받아두면 된다.

 


레이어 저장방식

레이어 저장방식은 도커 이미지를 받을 때 생기는 비효율성을 줄이기위해 사용한 방식으로 기존에 존재하는 이미지에 추가되는 부분을 레이어로 추가 하여 저장하는 방식을 말한다.

이러한 방식은 여러가지 장점을 가진다.

  1. 이미지의 일부가 수정되어 배포되면 수정된 레이어만 받아오면 된다.
  1. 컨테이너를 실행시켜 하위 레이어의 수정이 일어나도 결과는 컨테이너의 RW레이어에만 저장되고 하위 레이어의 이미지들은 변하지 않는다. ⇒ 하위 이미지로 새로 컨테이너를 만들면 변경사항이 적용되지 않는다.

도커에서 사용하는 레이어 저장방식은 https://www.44bits.io/ko/post/how-docker-image-work를 보면 훨씬 자세히 알 수 있다.

 


설치

  1. 제어판 → Hipher V 설정 확인 *안되어있으면 BIOS에서 설정 켜줘야함
  1. Docker for Windows 다운
  1. 설치 후 재시작

 


실행

  • clone
  • build
  • run
  • share

 


 

출처

https://subicura.com/2017/01/19/docker-guide-for-beginners-2.html

https://goddaehee.tistory.com/251

https://medium.com/harrythegreat/도커로-얻을-수-있는-이점들-c4c0ccde7ca3

https://www.daleseo.com/docker/