
Docker은 Go언어로 작성된 리눅스 컨테이너 기반으로하는 오픈소스 가상화 플랫폼이다.
Docker을 사용하면 개발 환경을 이미지화 시키고, 해당 이미지를 통해 개발 및 배포 환경을 쉽게 컨데이너화 시켜 구축할 수 있다.
쉽게 말해서 -> 내 개발 환경을 통째로 압축해서, 어디서든 똑같이 실행할 수 있게 해주는 프로그램"
팀워크에서의 이점
개발을 하다보면 팀원들과 언어나 프레임워크 버전이 달라 오류가 나는 경우도 있는데 도커를 사용하면 도커 이미지에 언어나 프레임워크 버전을 미리 정해놓거나,해당 이미지를 컨테이너화 시키면 해결된다.
서버에서의 이점
만약 서버응 늘리거나 이사 가야하는 경우 도커를 사용해 이미지만 가져와 새로운 서버에 컨테이너를 만들어 쉽게 동일한 환경을 구축할 수 있다.
또한 하나의 물리 서버에서 여러 도커 컨테이너를 돌려 여러 서비스에 배포하는 것 도 가능
도커는 다른 가상환경 기술에 비해 가볍고 빠른 실행 속도를 가진다.
이유가 뭘까?
기존에는 운영체제를 통째로 여러개 띄워서 쓰느라 느렸습니다, 그러나 도커는 내 컴퓨터에 이미 있는 운영체제 하나를 공유해서 프로그램만 가볍게 띄위기 때문에 빠릅니다.
따라서 MySQL 같은 무거운 개발 툴들을 내 컴퓨터에 복잡하게 직접 설치할 필요 없이, 필요할 때만 컨테이너로 가볍게 띄워서 쓰고 지울 수 있습니다.
도커는 리눅스 기반 오픈소스 가상화 플랫폼이다.
사용하는 이유는 팀원 및 서버와 개발 환경을 쉽게 동기화 할수있고
다른 가상환경 기술에 비해 가볍고 빠르기 때문이다.