Docker를 쓰는 이유에는 여러가지 장점이 있지만 그 중에서 핵심 장점 딱 1가지만 기억하자.
이식성 : 특정 프로그램을 다른 곳으로 쉽게 옮겨서 설치 및 실행할 수 있는 특성
이 핵심 장점을 예시를 통해 이해해보자.
친구는 컴퓨터에 MySQL을 아무 에러 없이 잘 깔았다. 그런데 내 컴퓨터에 MySQL을 깔려고 하니 이상하게 에러가 뜨는 것이다. 분명 친구가 설치한 방식대로 똑같이 했는데 제대로 안 깔릴 때가 있다. 지우고 다시 깔아봐도 계속해서 똑같은 에러가 뜨기도 한다.
내 컴퓨터에만 MySQL이 안 깔리는 이유는 다양하다. 버전을 다른 걸 설치했거나, 운영체제(Window, Mac OS 등)가 다르거나, 내 컴퓨터에 깔려있는 다른 프로그램(ex. 보안 프로그램)과 충돌이 일어났거나와 같은 다양한 이유로 프로그램이 정상적으로 설치되지 않는다. 그리고 설치 과정이 복잡하다면 새 컴퓨터를 사서 MySQL을 설치할 때마다 번거롭고 귀찮다고 느껴진다.
이걸 깔끔하게 해결하기 위해 나타난 툴이 Docker이다. Docker를 사용하면 명령어 한 줄로 어떤 컴퓨터에든 MySQL을 에러 없이 설치하고 실행할 수 있게 된다.
뿐만 아니라 Docker를 사용하면 아래와 같은 장점이 있다.