IT Technology/Cloud

Docker 기본 명령어 (정보확인, 관리)

by빵수 2021. 5. 1. 17:02
728x90
반응형

컨테이너 정보 확인 명령어

 

docker container ps 

  • 실행 상태의 컨테이너 상태 보기
  • CONTAINER ID, NAMES 둘다 컨테이너를 식별할 수 있는 고유한 이름이다.
  • -a : stop된 컨테이너까지 모두 보기 예시

 

 

Etc)

# docker container ps -a (stop된것까지 다 나옴) 

# docker container ps -a -f name=cadvisor (cadvisor만 표시해줌) 

# docker container ps -a --format "{{ .ID }}: {{ .Status }}" (id랑 status 컬럼만 보고싶은경우) 

# docker container ps -a -f exited=0 (status가 종료코드가 0인애들만) 

# docker ps -a --format "table {{ .ID}}\t{{ .Status }}" (docker 커맨드를 표 형식으로 실행)

 

 

docker container ls

  • 가동중인 컨테이너 목록을 표시한다. docker ps와 차이점이 없는 듯 하다.
  • 모든 컨테이너는 컨테이너ID를 가진다.

 

 

옵션

--all, -a : 실행중, 정지중 모두 포함하여 모든 컨테이너 표시

--filter, -f : 표시할 컨테이너 필터링

--last, -n : 마지막으로 실행된 N건의 컨테이너만 표시

--latest, -l : 마지막으로 실행된 컨테이너만 표시

--no-trunc : 정보를 생략하지 않고 표시

--quiet, -q : 컨테이너 아이디만 표시

--size, -s : 파일 크기 표시 --format : 표시 포맷 지정

 

Etc)

# docker container ls -a -f name=test1 (필터링) 

# docker container ls -a -f exited=0 (필터링) 

# docker container ls -a --format "table {{.Names}}\t{{.Status}}\t{{.Mounts}}" (표로 보기 출력 형식 지정)

# docker container ls -a --format "{{.Names}}: {{.Status}}" (출력 형식 지정)

 

 

docker container top 

  • 가동중인 컨테이너에서 프로세스를 확인.

 

 

 

docker container port 

  • 가동중인 컨테이너에서 실행되고 있는 프로세스가 전송되는 포트 확인
  • docker container port 컨테이너명 옵션

 

컨테이너의 80번 포트가 호스트 80번 포트로 전송된다 라는 의미

 

docker container logs

  • docker container logs 컨테이너명 
  • 컨테이너가 백그라운드에서 실행되고 있는 내용들을 볼 수 있다.

 

옵션

-t : 타임스탬프를 표시해준다.

-f : 실시간으로 관측 가능

 

 

EX)

 

1. 자신에게 핑을 날리는 컨테이너를 생성한다.

2. docker logs로 확인한다.

실행되는 내용들을 보여주고 프롬프트가 떨어진다.

 

3. 만약 실제로 진행사항을 보고 싶으면, attach로 연결한다.

 

계속해서 ping을 시도하고 있다.

 

 

컨테이너 관리 명령어

 

docker container stop

  • 실행중인 컨테이너를 중지시킨다. 
  • 여러개 컨테이너를 한꺼번에 중지할때는, 인수의 컨테이너 부분을 여러개 넣으면 된다.

옵션 

--time, -t : 컨테이너의 정지 시간을 지정. 기본값은 10초

 

Etc)

# docker stop $(docker ps -a -q) (모든 컨테이너 중지 ) // docker ps -a -q를 변수화해서 docker stop 에 넣으라는 의미.

# docker container stop -t 2 컨테이너명 (2초후에 컨테이너 정지)

 

 

docker container start

  • docker container start 컨테이너명
  • 중지된 컨테이너를 실행시킨다.
  • 여러개 컨테이너를 한꺼번에 시작할때는, 인수의 컨테이너 부분을 여러개 넣으면 된다.

 

 

옵션

--attach, -a : 표준 출력, 표준 오류 출력을 연다

--interactive, -i : 컨테이너의 표준 입력을 연다. 

 

 

docker container rm

  • 컨테이너를 삭제한다. 정지중인 컨테이너 프로세스를 삭제한다.
  • docker container rm [옵션] 컨테이너명

옵션 

--force, -f : 실행중인컨테이너를 강제 삭제 

--volumes, -v : 할당한 볼륨을 삭제

 

Etc)

# docker rm $(docker ps -a -q) (모든 컨테이너 삭제) 

# docker rm $(docker ps --filter 'status=exited' -a -q) (exit 상태의 모든 컨테이너 삭제)

# docker container rm -f $(docker ps -aq) (구동중인 컨테이너까지 모두 삭제, 위에 모든 컨테이너 삭제와 동일함)

 

 

docker container restart

 

  • 컨테이너를 다시 시작한다.
  • 컨테이너 여러개 명시 가능

 

옵션

--time, -t : 컨테이너의 재시작 시간을 지정. 기본값은 10초

 

Ex)

docker container restart -t 2 컨테이너명 (2초후에 컨테이너 재시작)

 

 

docker container pause 

  • 컨테이너를 중단시킨다.
  • docker container ls로 확인하면, STATUS가 paused로 확인된다.

 

docker container unpause 

  •  중단된 컨테이너를 재개시킨다.

 

docker container prune

  • 정지중인 컨테이너만 삭제한다.

 

docker container rename

  • 컨테이너의 이름을 변경한다.
반응형