도커 이미지
docker run 이미지이름
docker run 이미지이름 ls
- 이미지에 따라서 쓸 수 있는 커맨드가 다르다.
ex. hello-world로는 ls 명령어 실행불능: 문장만 표출하기에 실행할 수 있는 파일 안보임
컨테이너 나열
docker ps
- ps: process status
- 현재 실행중인 컨테이너를 리스트로 나열해줌
- 컨테이너ID 확인 가능해서 자주 사용
원하는 항목만 보기
docker ps —format 'table{{.Names}}\ttable{{.Images}}'
- ps 실행 시 원하는 항목(컬럼)값만 보이게 하는 명령어
{{ }} 내에 원하는 컬럼 값 삽입
모든 컨테이너
docker ps -a
도커 컨테이너 생명주기
docker create <이미지 이름>
docker start <컨테이너 아이디/이름>
- 명령어가 컨테이너로 삽입 후 실행 됨
- 아이디만 표출하고 끝남(화면에 따로 보이는건 없음)
docker start -a <컨테이너 아이디>
- -a : attach
- 컨테이너 아이디는 create 시 주어지는 아이디의 일부분
Docker Stop vs Docker Kill
둘 다 실행중인 컨테이너를 중지시킴
Stop
- 자비롭게(Grace Period) 중지: ex. 보내고 있던 메시지가 있다면 다 보내고 중지
Kill
컨테이너 삭제하기
모든 컨테이너 삭제
docker rm docker ps -a -p``
이미지 삭제
docker rmi <이미지ID>
한번에 컨테이너, 이미지, 네트워크 모두 삭제
docker system prune
실행 중인 컨테이너에 명령어 전달
docker exec <컨테이너 아이디> <커맨드>
- ex. docker exec alpine ls (결과 자체는 docker run alpine ls와 같다)
run은 새롭게 시작하는 컨테이너에, exec은 이미 실행중인 컨테이너에 명령어 전달