[따배도] 6-1.Container 사용하기 (이론)

( 참고 : 따배도 https://www.youtube.com/watch?v=NLUugLQ8unM&list=PLApuRlvrZKogb78kKq1wRvrjg1VMwYrvi )


Contents

  1. Container Image 사용법
  2. Container 실행/종료
  3. 동작 중인 Container 관리


앞서서, Container를 build하는 법을 배웠다.

그런 뒤, 이를 Registry에 보관하는 법도 배웠다.

이번에는, Container를 어떻게 실행/관리하는지에 대해 알아볼 것이다.


Q1. Container Image 사용법

Container Life Cycle

Docker HOST가 Docker Hub ( Registry )에서 image를 받아온 뒤 실행

docker pull 이미지이름:태그
docker run 이미지이름:태그
  • pull : hub에 있는 image를 다운받고
  • run : 다운받은 image를 실행한다


3 Main Questions :

  • [1] 다운 받은 저장된 image를 관리하는 방법은?

  • [2] 다운 받은 image를 run하고 실행하는 방법은?

  • [3] running 중인 container를 관리하는 방법은?


관련 명령어 모음

이미지 검색 :

  • docker search [옵션] <이미지이름:태그명>

이미지 다운로드

  • docker pull [옵션] <이미지이름:태그명>

다운 받은 이미지 목록 출력

  • docker images

다운 받은 이미지 상세 보기

  • docker inspect [옵션] <이미지이름:태그명>

이미지 삭제

  • docker rmi [옵션] <이미지이름>


Q2. Container 실행/종료

다운 받은 image를 container application으로 실행해줘야 한다.

이를 container로 만든 뒤, run하기 위해선, 아래의 명령어를 실행한다.

docker create --name webserver nginx:1.14
docker start webserver


figure2


현재 동작중인 container를 STOP하는 방법 :

  • docker stop webserver

현재 동작중인 container를 REMOVE하는 방법 :

  • docker rm webserver


관련 명령어 모음

컨테이너 생성

  • docker create [옵션] <이미지이름:태그명>
  • ex) docker create --name webserver nginx:1.14

컨테이너 실행

  • docker start [옵션] <이미지이름:태그명>
  • ex) docker start webserver

컨테이너 생성+실행

  • docker run [옵션] <이미지이름:태그명>
  • ex) docker run --name webserver -d nginx:1.14

실행중인 컨테이너 목록 확인

  • docker ps

동작 중인 컨테이너 중지

  • docker stop [옵션] 컨테이너이름
  • ex) docker stop webserver

컨테이너 복제

  • docker rm [옵션] 컨테이너이름


Q3. 동작 중인 Container 관리

docker ps

  • 동작 중인 container 확인하기

docker top webserver

  • webserver container에서 작동 중인 프로세스들

docker logs webserver

  • webserver container의 로그 정보들

docker exec webserver /bin/bash

  • running중인 webserver container에 bash라는 명령을 추가로 실행

docker stop webserver

docker rm webserver


관련 명령어 모음

실행중인 컨테이너 목록 확인

  • docker ps [옵션]

  • docker ps

포그라운드로 실행 중인 컨테이너에 연결

  • docker attach [옵션] 컨테이너명

동작 중인 컨테이너에 새로운 명령어 추가 실행

  • docker exec [옵션] 컨테이너명
  • ex) docker attach centos
  • ex) docker exec -it webserver /bin/bash

컨테이너에서 동작되는 프로세스 확인

  • docker top [옵션] 컨테이너명
  • ex) docker top

동작 중인 컨테이너가 생성한 로그 확인

  • docker logs [옵션] 컨테이너명
  • ex) docker logs
  • ex) docker logs -f