DevOps/Docker

자주 사용하는 도커 명령어

TTOII 2023. 2. 14. 01:36
728x90
명령어 설명
docker --version 도커 설치 확인 및 버전 출력
docker container list 실행 중인 컨테이너 목록 출력
docker ps 실행 중이거나 중지된 모든 컨테이너 목록 표시
docker image list 로컬 이미지 목록을 표시
docker build -t <tag> --file <docker-file> 현재 디렉토리를 기준으로 docker-file 경로에 따라 관련 파일로 이미지를 생성한다.
-t 인수는 이미지에 태그를 지정할 수 있다.
docker run -d -p <host-port>:<container-port> <tag> 이미지로부터 컨테이너 인스턴스를 생성한다.
이미지가 로컬에 없다면, 레지스트리 URL을 태그로 지정한 경우 원격 레지스트리에서 가져온다.

분리 모드는 컨테이너를 실행하는 -d 인수를 사용해 컨테이너가 터미널 창에 제한되지 않도록 하지만, 출력은 다 볼 수 없다.
출력을 직접 보고 싶다면 -d를 생략한다. 이렇게하면 터미널 입력을 더 이상 쓸 수 없다.

포트를 바인드하기 위해 -p 인수를 사용해 호스트 포트와 컨테이너의 포트를 바인드한다.
docker logs <container-id> 특정 컨테이너의 출력을 가져온다.
컨테이너를 분리 모드로 실행 중인 경우에 출력을 확인하기 위해 필요하다.
docker login <url> --username <username> --paseword <password> 프라이빗 도커 레지스트리에 대해 인증을 하고 이를 대상으로 다른 명령을 실행할 수 있게 한다.
docker tag <existing-tag> <new-tag> 기존의 이미지에 새로운 태그를 붙인다.
이미지를 프라이빗 컨테이너 레지스트리에 푸시하는 경우에 레지스트리 URL을 사용해 반드시 태그를 추가해야 한다.
docker push <tag> 올바르게 태그를 추가한 이미지를 프라이빗 도커 레지스트리에 푸시한다. 이미지는 반드시 레지스트리 URL을 사용해 태그해두어야 한다.
docker kill <container-id> 특정 컨테이너를 로컬에서 중지한다.
docker rm <container-id> 특정 컨테이너를 로컬에서 제거한다. (우선 중지가 필요하다.)
docker rmi <image-id> --force 특정 이미지를 로컬에서 제거한다.(관련 컨테이너가 먼저 제거되어 있어야 한다.)
태그가 여러번 참조된 경우에도 --force 인수를 사용하면 제거할 수 있다.
728x90