docker container
docker image
docekr network
docker volume
이미지를 만들고 컨테이너를 생성.
docker container create
명령시 이미지에 포함될 linux의 디렉토리와 파일들의 스냅샷을 취한다.
docker search [op] <keyword>
docker image pull
: 특정 이미지를 다운로드할 때 사용(기본적으로 docker hub에서)docker image push
: 이미지를 업로드할 때 사용docker image ls/docker images
: 현재 시스템의 이미지 목록 확인
옵션 | 설명 |
---|---|
-all, -a | 모든 이미지 표시 |
--digests | 다이제스트를 표시할지 말지 |
--no-trunc | 결과 모두 표시 |
--quiet, -q | Docker 이미지 ID만 표시 |
docker image inspect
: 특정 이미지의 자세한 정보 확인docker image rm
: 특정 이미지를 삭제 (컨테이너가 존재하면 이미지 삭제가 제한적)docker image prune
: 이름이 없는 모든 이미지 삭제docker image tag <docker hub 사용자명>/image_name:[tag]
: 태그 붙이기docker container create
: 컨테이너 생성. 이미지의 데이터만 복제하고 프로세스는 실행하지 않음docker container start
: 컨테이너를 실행docker container run
: 이미지를 이용해서 컨테이너를 만들고 실행create+start = run
-it: 입출력 옵션
-d: 어플리케이션은 거의 필수. 선택적 사용(ex. httpd)
--name: 이름 지정
run container_name 명령어 사용시 해당 컨테이너에서 명령어 실행
컨테이너 내부에서 하나의 어플리케이션 동작
옵션 | 설명 |
---|---|
--attach, -a | STDIN, STDOUT, STDERR 연결 |
-cidfile | 컨테이너 ID를 파일로 출력 |
--interactive, -i | STDIN을 사용해야 할 경우 |
--detach, -d | 컨테이너를 생성하고 백그라운드에서 실행 |
--tty, -t | 접속해서 사용할 터미널 장치 |
--rm | 실행하고 나서 종료할 때 바로 삭제함 |
--restart=[no | on-failure |
docker container stop
: 동작 중인 컨테이너 중지(내부 프로세스 중지)docker container pause
: 컨테이너 일시 정지docker container unpause
: 컨테이너 동작 재개docker container restart
: 컨테이너 재시작docker container ps
: 컨테이너 상태 확인docker container ls
: 동작 중인 컨테이너 목록 확인
옵션 | 설명 |
---|---|
--all, -a | 실행 중/정지 중인 것도 포함하여 모든 컨테이너 표시 |
--filter, -f | 표시할 컨테이너 필터링 |
--format | 표시 포맷 지정 |
--last, -n | 마지막으로 실행된 n개의 컨테이너만 표시 |
--latest, -l | 마지막으로 실행된 컨테이너만 표시 |
docker container rm
: 중지 상태의 컨테이너 삭제docker container prune
: 중지 상태인 모든 컨테이너 삭제docker container exec <컨테이너> <명령어>
: 컨테이너에 잠깐 사용할 추가적인 어플리케이션 실행(사용 후 반드시 종료)docker container top
: 컨테이너 내부의 프로세스 상태 확인docker container attach <컨테이너>
: 동작 중인 컨테이너에 연결 가능(단, 쉘이 실행중이어야 함)특정 컨테이너가 리소스(cpu/memory)를 독점하지 않도록 한계치 혹은 비율 지정
# docker container run --cpu-share / --cpus / --memory ...
컨테이너 지정 시 특정 컨테이너
지정하지 않을 경우 모든 컨테이너에 대해 리소스 할당량 및 사용량 확인
--no-stream 옵션 사용 시 한 번 확인(안쓰면 실시간 모니터링)
# docker container stats [컨테이너]
메모리 할당 변경 시에는 swap 메모리와 함께 조정해야 할 수 있음
최초 실행 시 메모리 제한이 없으면 swap 메모리 조정 후 물리메모리 조정 가능. 이 때, 컨테이너를 중지시킨 후 swap 메모리 조정 가능)
# docker container update
# docker image inspect <image> --format "{{ .Config.Env }}"
# docker image pull httpd
# docker image pull centos:7
# docker image pull ubuntu
다운로드 한 이미지 확인
docker image ls -a
이미지를 이용해서 컨테이너 실행
# docker container create -it --name centos centos:7
# docker container start -ai centos
# start -ai 옵션으로 연결 시, ctrl+p+q를 입력해서 연결만 해제(상태 유지)
# docker container create --name web1 httpd
# docker container start web1
# docker container run -itd --name ubuntu ubuntu
# docker container run -d --name web2 httpd
# docker container ls
# docker container ls -a
# docker container inspect web1
# docker container stop ubuntu
# docker container rm -f web1
# docker container run --name centos_ls centos:7 ls
- `docker image rm`: 특정 이미지를 삭제 (컨테이너가 존재하면 이미지 삭제가 제한적)