되면한다
01. 도커를 쓰는 이유 본문
1-1. 도커란 무엇인가?
컨테이너를 사용하여 응용프로그램을 더 쉽게 만들고, 배포하고, 실행 할 수 있도록 설계된 도구이다.
1-2. 도커를 사용하는 이유는 무엇인가?
도커를 사용하지 않는다면, 응용프로그램을 설치할때 갖고 있는 서버, 패키지 버전, 운영체제등에 따라 설치과정에서 오류가 발생할 수 있다.
예를 들어 unity hub를 설치하고 싶다고 가정하자.
https://docs.unity3d.com/kr/2019.4/Manual/GettingStartedInstallingHub.html
위 링크의 공식 문서에서 알 수 있듯이, os별로 유니티 허브를 설치하는 방법이 다르고, 설치 오류를 해결하는 방법이 다르다. 그러나 컨테이너 도구인 도커가 설치되어 있다면, 어느 환경이든 상관 없이 동일한 명령어로 유니티 허브를 설치할 수 있다.
사실 위의 예시는 우리가 조금만 더 고생하면, 해결되기 때문에 도커의 필요성이 와닿지 않을 수 있다. 이번에는 좀더 실질적인 예시를 들겠다.
똑같은 일을 하는 두 서버가 있다. a서버는 1년전에 구축되었고, b서버는 이제 막 구축되었다. 웹을 만들어, 이 두개의 서버에서 배포한다고 했을때, 한개의 서버에서는 오류가 발생할 수 있다. 서버에 구축된 os, 패키지, 라이브러리가 다를 때 이러한 문제가 발생하는데, 두 서버의 차이를 발견해서 문제를 해결하는 건 쉽지 않다. 이러한 상황을 피하기 위해 도커가 사용된다.
그렇다면, 어떻게 도커는 위와 같은 문제가 발생하지 않을까?
추후에 다시 설명 하겠지만, 도커는 도커파일이라는 일종의 서버 운영 기록을 통해, 도커 이미지를 생성하게 된다. 이 도커 이미지를 실행하여 컨테이너를 만들고, 이 컨테이너에 담겨져있는 우리가 원하는 유니티와 같은, 응용프로그램을 실행하게된다.
도커 파일을 1년전에 만들어 두고, 이를 기반으로 만든 도커 이미지로 1년전에 a서버를 구축하고, 현재에 와서 같은 도커이미지로 b서버를 구축했다면, 두개의 서버는 차이가 없게 된다.
참고:
왜 굳이 도커(컨테이너)를 써야 하나요? - 컨테이너를 사용해야 하는 이유 | 44BITS
설명에 문제가 있으면 알려주세요!
'도커' 카테고리의 다른 글
에러: Head https://registry-1.docker.io/v2/library/node/manifests/alpine: net/http: TLS handshake timeout (0) | 2021.05.18 |
---|---|
컨테이너 가상화 기술 (0) | 2021.05.15 |
도커 permission denied (0) | 2021.05.15 |
03. 도커 이미지와 도커 컨테이너 (0) | 2021.05.14 |
02. 도커 설치하기(우분투 20.04) (0) | 2021.05.14 |