본문 바로가기
Development Tools/Docker

Docker 시작하기

by jjerryhan 2017. 12. 30.
반응형

Docker 설치

도커가 무료 커뮤니티 버전과 유료 엔터프라이즈 버전으로 분리되고, 맥과 윈도우에서 더이상 Virtual Box 를 사용하지 않고 바로 컨테이너가 실행가능하도록 네이티브를 지원하게 되었습니다. 



관련내용은 다른 포스트를 참고해 주세요... 



도커 다운로드 및 설치하기

도커 설치는 도커 사이트에서 검색해서 설치하면 됩니다. (쉽죠?) 


커뮤니티 에디션(무료) 를 아래 링크에서 다운로드 하셔서 설치하면 됩니다. 

  • https://www.docker.com/community-edition#/download


설치를 하면 Docker 어플리케이션이 설치가 되고. 


실행을 하면 그냥 요렇게 실행 됩니다.



Docker 컨테이너 실행해 보기

설치가 완료되었으니 docker 를 통해 간단하게 컨테이너를 실행해 볼까요?
터미널을 여신 후 docker 가 잘 설치되었는지 우선 확인.
>> docker -v
>> docker-compose -v


설치가 잘 되었으니 도커를 통해 컨테이너를 띄워 봅시다.

docker run hello-world

위 명령어에 대한 실행과정은 이렇습니다.

1) docker 가 hello-world 에 해당하는 이미지를 우선 다운로드 하고 (로컬에 이미 이미지가 있다면 그 이미지를 쓰겠지만 없으니 다운로드 하네요).

2) 받은 이미지를 구동합니다. (컨테이너 구동)

3) 구동된 컨테이너가 실행되면서 컨테이너 안에서 "Hello from Docker!" 문자열을 출력합니다.

4) 출력된 문자열을 호스트 장비로 전달(streamed) 해 주기 때문에 해당 문자열이 출력된 것을 볼 수 있습니다.

5) 문자열 출력을 완료한 컨테이너는 더 이상 할일이 없기 때문에 종료됩니다. (항상 구동되어 있어야 하는 OS 가 아니니까요.)



실행완료된 컨테이너 인스턴스(프로세스)와 도커 이미지 삭제하기

종료된 컨테이너 인스턴스, 즉 프로세스는 재실행을 위해서 디스크에 잔존합니다.
이미지는 원본이고, 프로세스는 이미지가 실행된 사본입니다. 
이미지는 클래스이고, 프로세스는 인스턴스 입니다. (OOP ...) 

컨테이너 목록 조회

아무튼 더 이상 안 필요하니 우선 프로세스 목록을 조회하고, (-a 를 붙여야 종료된 프로세스까지 같이 조회됨)
docker ps -a

container id 와 image 이름이 보이네요.   hello-world 프로세스가 지울 대상입니다. 


컨테이너 삭제

컨테이너 ID 를 통해 삭제합니다. ID 의 앞에 두 문자만 줘도 됩니다. 다 입력하지 마시고.

docker rm d8

d8 로 시작하는 컨테이너가 지워졌습니다.


이미지 목록 조회

컨테이너의 원본인 이미지를 조회합니다. 

docker images

역시 image id 가 있네요.  사이즈가 고작 1.85kb 입니다.  


이미지 삭제

이미지 삭제 명령인 rmi 를 실행하면 되고, 컨테이너와 마찬가지로 id 앞에 두 글자만 입력하면 됩니다.

docker rmi f2



이번 포스트는 여기까지 입니다.