기타

도커(Docker)란? 도커는 언제 적용할까?

멍토 2021. 8. 25.

도커란?

도커는 리눅스의 응용 프로그램들을 프로세스 격리 기술들을 사용해 컨테이너로 실행하과 관리하는 오픈 소스 프로젝트이다.

도커는 왜 나오게 되었을까?

기존에는 프로세스를 격리하기 위해 가상환경을 이용했는데 이러한 방법은 많은 리소스를 차지하고 무겁기 때문에 경량화가 필요했고 경량화를 적용한 컨테이너를 이용하는 것이 도커이다.

왜 사용해야 할까?

내가 생각하는 사용이유는 환경을 통일하는데 있다.

서비스를 만들때 환경에 따른 영향을 받을 수밖에 없다. 그래서 같은 코드에 같은 패키지를 설치하더라도 어디서는 동작하고 어디서는 동작을 하지 않을 수 있다.

또한 이미지를 이용하여 모든 종속성에 관련된 패키지들을 한번에 설치가 가능하다.

언제 적용해야 할까?

  1. 서비스환경와 개발환경이 다를때(window, linux와 같은 교차플랫폼일때)
  2. 배포해야하는 서버가 여러대일때 (1대일때는 하나하나 설치하면 되지만 여러대라면 모든 서버에 환경을 설정하는것이 쉽지 않다.)

나의 적용 사례

Spring을 이용하여 서비스를 만들고 WebApplication 서버에 올리게 되었다.

그렇지만 하나의 요청에 많은 리소스를 사용하게 되었고 해당 문제를 해결하기 위해 WAS를 추가하게 되었다.

여기서 불편함이 생겼는데 필요한 설정들을 추가해야 하는 번거로움이 발생했다.(자바설치, 버전일치 등)

앞으로 서버가 추가될때마다 해야하는 작업이 될텐데 이러한 번거로움을 줄이기 위해서 도커를 이용하여 필요한 것들을 이미지로 한번에 처리할 수 있었다.

출처 : https://ko.wikipedia.org/wiki/%EB%8F%84%EC%BB%A4_(%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4)

https://www.docker.com/resources/what-container

https://docs.docker.com/get-started/overview/

댓글

💲 광고입니다.