도커는 최근 개발에서 가장 핵심이 되는 기술로, 데이터엔지니어링, 클라우드 컴퓨팅, 안전하고 효율적인 개발이 가능하게 하고 모든 개발 앱의 기본기로 사용되는 기술이다.

당장 도커는 4.4장에서 처음 사용하게 되고, 그 이후로도 크게 사용하지는 않지만 능숙한 개발자라면 최소한 개념은 알아야하기 때문에 소개한다.

다음과 같은 상황을 가정하자.

<aside> ❓ 내 로컬 컴퓨터(A)에서 실행한 코드를 다른 팀원 컴퓨터(B)에서 그대로 실행하고 싶다.

</aside>

Hello, World!를 print하는 간단한 코드라면 문제 없겠지만, 실무에서는 벌어지는 상황들은 그리 간단하지 않다. A에서 실행한 코드가 B에서 그대로 실행이 안되는 데에는 다음과 같은 여러 이유들이 있다.

  1. A와 B의 OS 종류가 다르다.
    1. A는 macos고, B는 linux다.
  2. (개발 언어가 python인 경우) A가 실행한 python version과 B에 깔려 있는 python version이 다르다.
  3. A가 사용한 라이브러리 version과 B에 깔려 있는 라이브러리 version이 다르다.
  4. (알 수 없거나 해결하기 어려운 기타 환경설정 에러들)

Docker는 이런 상황에서 A에서 실행한 코드를 그대로 B에서 실행할 수 있게 해준다.

Docker 생기초 개념

Docker란?