[docker] 도커(Docker) 클라이언트 명령어 정리

Jung Wish·2021년 5월 19일
0

DevOps

목록 보기
1/2
post-thumbnail

내가 보려고 정리하는 도커(Docker) 클라이언트 명령어 정리

도커(Docker) 주요 명령어

docker run [docker_image]

  • 도커 서버로 명령어 전송
  • 도커 서버 캐시에 이미 해당 이미지가 있는지 확인
  • 없으면 도커 허브에서 이미지를 찾아 캐시로 가져옴
  • 가져온 후 이미지로 컨테이너를 만들어서 컨테이너 내부에 이미지 내부 파일 스냅샷을 컨테이너 하드디스크에 할당 후 명령어를 실행해 파일을 실행

docker run [docker_image][command]

  • 원래 이미지가 가지고 있는 시작 명령어를 무시하고 입력한 커멘드를 실행

docker ps # ps: process status

  • CONTAINER ID : 컨테이너 고유의 해시값
  • IMAGE : 컨테이너 생성 시 이용한 도커 이미지
  • COMMAND : 컨테이너 시작시 실행될 명령어
  • CREATED : 컨테이너가 생성된 시간
  • STATUS : 컨테이너 상태(Up: 실행 중, Exited: 종료, Pause: 일시 정지)
  • PORTS : 컨테이너가 개발한 포트와 호스트에 연결한 포트(특별한 설정을 하지 않으면 출력 X)
  • NAMES : 컨테이너 고유 이름 --name으로 따로 설정해주지 않으면 도커에서 임의로 설정을 해줌

docker ps --format 'table{{.NAMES}}\t table{{.IMAGE}}'

docker ps -a # a: all

  • 실행되고 있지 않은 이미지를 포함한 컨테이너 내역 출력

docker run [docker_image] => docker create img + docker start [container_id/name]

docker stop [containerID] / docker kill [containerID]

  • stop은 gracefully 하게 => 기존 작업이 있다면 그 작업이 끝날때까지 기다렸다가 중지
  • kill은 곧바로 정지
  • stop => sigterm => sigkill => main_process down
  • kill => sigkill => main_process_down

docker rm [containerID]

docker rm docker ps -a -q

  • 모든 컨테이너 요소 삭제

docker rmi [imageID]

  • 도커 이미지 삭제

docker system prune

  • 사용하지 않는 이미지, 컨테이너 정리

docker exec [containerID][command]

  • 이미 실행중인 컨테이너에 명령어 전달
  • run => 새로운 컨테이너 생성해서 실행

docker exec -it [containerID][command]
-i : interactive
-t : terminal

  • 컨테이너에 interactive 상태로 터미널에 접근해서 Command 실행

docker exec -it [containerID] sh

  • 컨테이너에 interactive 상태로 접근해서 shell(터미널) 실행
  • sh, bash, zsh : terminal로 접속(이미지에 있는 쉘 종류에 따라 상이) => 가장 보편적인것이 sh
  • 환경에서 나올때는 ctrl+D를 누르면 된다.

Reference

profile
Frontend Developer, 올라운더가 되고싶은 잡부 개발자, ISTP, 겉촉속바 인간, 블로그 주제 찾아다니는 사람

0개의 댓글