docker 란

docker

도커(Docker)

도커(Docker)란 리눅스 컨테이너를 기반으로 특정 환경을 패키징하고 배포하는 오픈소스 프로그램 입니다.

도커를 왜 사용하지 ?

기존에 개발하면서 Maven, node, FTP 등 배포도구를 사용 하였는데. 특정 소프트웨어를 개발한 예를 들어 어플리케이션을 개발하고 배포하자고 할 때 해당 어플리케이션이 어느 서버든 쉽게 구동 될 수 있도록 사용해 왔습니다.

예를 들어 웹프로젝트를 내 로컬환경에서 개발하고 이 개발 한 웹어플리케이션을 특정 서버에서 구동하기 위해서는 java로 개발을 했다면, java , jvm , apche Tomcat등 필요하며 기본 환경 셋팅을 전부 한 이후에 내가 개발한 웹프로젝트를 서버에 올려 구동을 시키는게 일반적 입니다.

이런한 환경들을 셋팅하는데 많은 소요시간과 버그들이 발생하게 되는데 이를 좀더 쉽게 배포하고자 나온게 바로 컨테이너(Container) 개념 입니다. 우리가 docker를 설치하게 되면 container에 Image를 담아서 배포를 할 수 있습니다.

우리는 도커(Docker)만 설치하게 되면 언제 어디서든지 도커 이미지만 컨테이너에 올려서 배포하게 되면 내가 개발한 환경이 그대로 올라가게 되요.

flowdocker

위 그림은 도커가 이미지가 어떻게 배포되는지 간략한 과정입니다.

Dockerfile를 셋팅하고 해당 file을 Docker 명령어를 통해 build 하게 됩니다 build 하게 되면 Docker Image가 만들어 지고 해당 Image 파일을 가지고 도커가 설치된 곳에서 Docker 명령어를 통해 이미지만 container에 배포하게 되면 도커 컨테이너 위에서 실행이 되게 됩니다.

VM / container 차이

vm_docker

reference

태그:

카테고리:

업데이트: