리눅스의 응용 프로그램들을 프로세스 격리 기술들을 사용해 컨테이너로 실행하고 관리하는 오픈 소스 프로젝트 특징) 원하는 개발 환경을 파일에 저장하면, Docker는 이를 원하는 어떤 머신에든 해당 환경을 시뮬레이션해준다. 이러한 환경들은 각기 독립적으로 존재하기 때문에, 원하는 무슨 환경이든 모듈식으로 관리 가능하다.