environment disparity, 모든 독립적 운용을 한방에
docker는 environment disparity 라는 문제점을 해결해준다. 즉, 개발 환경이 맞지 않는 상태를 Docker를 통해 해결할 수 있다.
예를 들어, 윈도우에서 개발하였고 모든 개발을 완료한 상황이므로 서버에 올리기만 하면 된다. 그런데 이 코드를 서버에 올리니 제대로 작동하지 않는다. 이는 (코드 작업하던 나의) 컴퓨터는 윈도우고 서버는 리눅스이기 때문일 수 있다. 이러한 상황을 environment disparity 라고 한다.
Docker를 통해 다른 머신에서도 같은 환경을 구현할 수 있기 때문에 위의 문제를 해결할 수 있다.
또한 Dockerd 컨테이너들은 독립적이다. 따라서 한 개의 서버에 각기 다른 많은 수의 컨테이너를 가질 수 있다. 예를 들어 파이썬 컨테이너, 장고 컨테이너, 자바 컨테이너 등등 각기 다른 컨테이너들이 독립적으로 존재할 수 있다. docker 덕분에 이렇게 다양한 컨테이너들을 관리할 수 있다.
따라서 매번 새로운 서비스를 만들 때마다 새로운 서버를 사고, 설정할 필요없이 docker를 통해 새로운 환경을 생성할 수 있다. 단순히 컨테이너를 생성하고 필요에 따라 복제하면 되기 때문이다. (원하는 만큼!!)
파이썬 서버, 자바 서버, 데이터베이스 서버.... 이렇게 막 추가해서 살 필요가 없어졌다~~~