- docker run
: 도커 이미지 실행
# docker run --rm -p 80:80 nginx:latest
nginx:latest 이미지가 local 에 없으면 repo 에서 최신 버전을 다운받고 나서 실행된다.
※ --rm : 컨테이너 삭제 명령어인데, run 과 함계 사용해서 컨테이너 종료시 사용했던 자원들(임시 파일들, 컨테이너)이 같이 삭제된다.
※ -p : 호스트와 컨테이너 포트 연결. <호스트 포트>:<컨테이너 포트>.
ex) 8085:80 -> localhost:8085 로 연결하면 nginx 80 으로 연결
- docker inspect
: 컨테이너 정보 확인
# docker inspect [이미지명]
도커 디렉토리 /var/lib/docker/overlay2 하위 디렉토리인 a8a9da~/ 라는 디렉토리에 데이터가 있는 걸을 확인할 수 있다.
- docker ps
: 실행 중인 컨테이너 목록 확인
# docker ps
실행중인 컨테이너(d7a42d937cee / nginx:latest / pedantic_wilbur) 은 도커 디렉토리(/var/lib/docker) 하위 containers/ 디렉토리에서 디렉토리 형태로 확인할 수 있다.
- docker exec
: 컨테이너에서 명령어 실행
# docker exec -it [컨테이너] /bin/bash
/bin/bash 을 실행해서 컨테이너 내부에서 쉘 명령어들을 실행할 수 있다.
(-i : interfactive, 컨테이너 안에서 대화형 쉘(shell) 을 생성, -t : pseude-TTY, 표준 컨테이너 입력(input) 에 연결된 tty 을 할당.
※ 두 옵션을 항상 같이 해야, 일반 터미널 애뮬레이터에서 작업하는 거처럼 명령어 입력시 바로 결과로 보임)
- docker rm
: 컨테이너 삭제
# docker rm [컨테이너]
nginx:latest(d98e799d55d6) 컨테이너를 삭제하려고 했는데 실행중이이서 에러가 났지만 컨테이너를 중단시키고, 두번째 삭제를 했을때 처리가 되었다. 도커디렉토리 /var/lib/docker/containers/ 에서도 디렉토리(d98e799d55d6~)도 사라졌다.
- docker rmi
: 이미지 삭제
# docker rmi [이미지]
nginx:latest 가 실행중인 컨테이너가 있어서 에러가 나서 강제 옵션으로(--force) 삭제했다. 컨테이너 디렉토리(1069d0f1~) 는 사라지지 않았고, docker rm 을 실행해야 사라진다.
참고
https://docs.docker.com/engine/reference/run/
https://www.freecodecamp.org/news/where-are-docker-images-stored-docker-container-paths-explained/
https://goteleport.com/blog/get-a-shell-into-kubernetes-pod/
'TroubleShooting > Docker' 카테고리의 다른 글
docker build 중 "ERROR: failed to solve: error from sender: context canceled" 오류 해결 (0) | 2024.03.26 |
---|---|
도커 데스크탑 데이터 삭제 (0) | 2023.08.18 |
flutter Android toolchain 문제 해결 (1) | 2023.06.18 |
도커 데스크탑 디렉토리 이동 (1) | 2023.03.24 |
docker logs 파일로 저장 (0) | 2022.11.30 |