Docker 기본 명령어 정리
- 도커 버전 확인
$ docker -v
- 도커 이미지
도커 이미지 목록 확인
$ docker images
도커 이미지 불러오기
컨테이너 run할 시 이미지가 없으면 자동으로 pull 해옴.
$ docker pull [ImageName:태그]
도커 이미지 삭제
$ docker rmi [ 이미지 ID ]
$ docker rmi -f [ 이미지 ID ] # 컨테이너를 삭제하기 전에 이미지 삭제
도커 모든 이미지 한 번에 삭제
$ docker rmi $(docker images -q)
- 도커 컨테이너
컨테이너 실행
$ docker run [Options] [Image] [Command]
ex)
$ docker run -it -p 8888:8888 --name exname pytorch/pytorch /bin/bash
[Options]
실행 중인 컨테이너 확인
$ docker ps
$ docker ps -a # 정지된 컨테이너 포함
컨테이너 시작, 재시작, 종료
$ docker start [ 컨테이너 이름 ]
$ docker restart [ 컨테이너 이름 ]
$ docker stop [ 컨테이너 이름 ]
시작한 컨테이너 터미널에 접속
$ docker attach [ 컨테이너 이름 ]
컨테이너 삭제
$ docker rm [ 컨테이너 ID ]
모든 컨테이너 한 번에 삭제 (중지 후 삭제)
$ docker stop $(docker ps -a -q)
$ docker rm $(docker ps -a -q)
- Dockerfile
Dockerfile 로 이미지 생성
Dockerfile이 있는 디렉토리로 이동
$ docker build --tag [ 생성할 이미지 이름 ] : [ 태그 이름 ] .
# 마지막 온점(마침표) 빼먹지 말길
- 사용 중인 도커 컨테이너 이미지로 올리기
ctrl+p ctrl+q 를 차례로 누를 시 현재 사용 중인 컨테이너가 중지되지 않고 터미널로 나올 수 있음.
commit
$ docker commit -m "메세지" [ 컨테이너 이름 ] [ 이미지 REPOSITORY ]:[ 태그 ]
ex) docker commit -m "first commit" pt pytorch/pytorch:paengtag
push
$ docker login # 도커 로그인
$ docker tag [ 이미지 REPOSITORY ]:[ 태그 ] [ 저장소 주소 or 사용자 명 / 이미지 이름 ]:[ 태그 ]
$ docker push [ 이미지 REPOSITORY ]:[ 태그 ]
ex) docker tag pytorch/pytorch:paengtag pytorch/pytorch:paengtag
ex) docker push pytorch/pytorch:paengtag
- 도커 캐시 데이터 (Cache data) 삭제
작업 내용이 모두 날아갈 수 있으니 주의
$ docker system prune --volumes
- 도커 재 실행
$ systemctl restart docker
- 도커 제거
$ sudo apt-get purge docker-ce
$ sudo rm -rf /var/lib/docker