컨테이너 기반의 오픈소스 가상화 플랫폼이다.
컨테이너(Container)는 개별 Software의 실행에 필요한 실행환경을
독립적으로 운용할 수 있도록 기반환경 또는 다른 실행환경과의 간섭을 막고
실행의 독립성을 확보해주는 운영체계 수준의 격리 기술을 일컫는다.
Doker는 Cilent와 Server 구조로 이루어져 있다.
Cilent가 Server에 명령을 전달하면 Server가 실행시키는 구조이다.
Doker의 life cycle에서 Docker 이미지는 'Build' 부분에 해당된다.
Docker container에서 실행시키고 싶은 application을
docker 이미지로 빌드해서 실행시키게 된다.
Docker registires는 Docker 이미지를 저장하는 Repository라고 보면 된다. Source code를 github에 저장하여 관리하듯 docker 이미지는
Dockerhub 같은 Docker Registries에 저장한다고 생각하면 된다.
Github과 마찬가지로 Public Registry가 있고 Private Registry가 있다.
Docker container에서 Docker 이미지가 실행된다.
즉 Docker 이미지를 실행시키는 가상화 공간 이다.
Docker container는 하나 혹은 그 이상의 프로세스를 실행 시킬수 있다
(하지만 하나의 프로세스만 실행시키는 것을 권장)
컨테이너 목록 확인 (ps)
docker ps [OPTIONS]
컨테이너 중지하기 (stop)
docker stop [OPTIONS] CONTAINER [CONTAINER...]
컨테이너 제거하기 (rm)
docker rm [OPTIONS] CONTAINER [CONTAINER...]
이미지 목록 확인하기 (images)
docker images [OPTIONS] [REPOSITORY[:TAG]]
이미지 다운로드하기 (pull)
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
이미지 삭제하기 (rmi)
docker rmi [OPTIONS] IMAGE [IMAGE...]
컨테이너 로그 보기 (logs)
docker logs [OPTIONS] CONTAINER
컨테이너 명령어 실행하기 (exec)
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]