도커란 데이터 또는 프로그램을 격리시키는 기능을 제공한다.
Go 프로그래밍 언어로 작성되어 리눅스 컨테이너에 여러 기능을 추가해 애플리케이션을 개발, 실행하기 위한 플랫폼이다.
도커를 사용하려면 도커 소프트웨어의 본체인 도커엔진을 설치해야 한다. 그리고 도커 엔진을 사용해 컨테이너를 생성하고 구동시킬 수 있다.
도커 엔진이 있어야 컨테이너를 만들 수 있다. 그러나 컨테이너를 만들려면 도커 엔진 외에도 컨테이너의 빵틀과도 같은 역할을 할 이미지가 필요하다
→ 이미지는 종류가 아주 많다 SW의 종류에 따라 다양한 이미지를 사용한다. 아파치 컨테이너를 만들려면 아파치 이미지를 사용하고, MySQL 컨테이너를 만들려면 MySQL 이미지를 사용해야 한다.

도커 컨테이너는 완전히 독립된 환경이므로 여러 컨테이너에서 같은 프로그램을 실행 할 수 있다. 버전이 동일해도 상관없다.