본문 바로가기

docker

도커 기본 명령어

-----이미지 관련 명령어-----

이미지 목록 보기

$ docker images

이미지 검색

$ docker search [이미지 이름]

이미지 받기

$ docker pull [이미지 이름]:[버전]

버전에 latest를 쓰면 최신 버전

이미지 삭제

$ docker rmi [이미지 id]

-f 옵션 : 컨테이너도 같이 강제 종료

----- 컨테이너 관련 명령어 -----

컨테이너 목록 보기

$ docker ps

-a 옵션 : 모든 컨테이너 보기

-q 옵션 : 컨테이너의 id만 추출

컨테이너 실행(create + start)

$ docker run [options] 이미지명[:TAG|@DIGEST] [COMMAND] [ARG...]

options

-d : 백그라운드 모드

-p : 호스트와 컨테이너의 포트 연결

-v : 호스트와 컨테이너의 디렉토리 연결

-e : 컨테이너 내에서 사용할 환경변수 설정

--name : 컨테이너 이름 설정

-i : 상호 입출력

-t : tty를 활성화하여 bash셀을 사용

--rm : 프로세스 종료시 컨테이너 자동 제거

--link : 컨테이너 연결 [컨테이너 명:별칭]

ex) docker run -i -t --name test ubuntu:latest /bin/bash

컨테이너 시작

$ docker start [컨테이너 id 또는 name]

컨테이너 재시작

$ docker restart [컨테이너 id 또는 name]

컨테이너 접속

$ docker attach [컨테이너 id 또는 name]

컨테이너 접속 후 나오는 법 : exit 또는 ctrl + D

컨테이너를 종료시키지 않고 나오는 법 : ctrl + P, Q

외부에서 컨테이너 내부에 명령어 실행

$ docker exec [컨테이너 id 또는 name] [명령어]

컨테이너 정지

$ docker stop [컨테이너 id 또는 name]

컨테이너 삭제

$ docker rm [컨테이너 id 또는 name]

모든 컨테이너 삭제하는 방법2가지
$ docker container prune
$ docker rm $(docker ps -a -q)

컨테이너 이름 변경

$ docker rename [기존이름] [변경할 이름]

컨테이너 -> 이미지로 재생성

$ docker commit [기존container명] [새로운 이미지이름]

----- 이미지, 컨테이너  공통 명령어 -----

이미지 히스토리 보기

$ docker history [container/image] 

이미지 상세 정보 보기(json 형태)

$ docker inspect [container/image] 

참고

https://velog.io/@wlsdud2194/-Docker-%EB%8F%84%EC%BB%A4-%EA%B8%B0%EB%B3%B8-%EB%AA%85%EB%A0%B9%EC%96%B4-%EB%AA%A8%EC%9D%8C

https://beomseok95.tistory.com/179