docker image를 tar 파일로 저장
ex) docker image save mysql:5.7 > mysql57.tar
만약 압축파일 형태로 주고 싶다면
docker image save mysql:5.7 | gzip > mysql57-2.tar.gz
docker image를 저장한 파일 내용으로 image 복원
ex) docker image load < mysql57.tar
docker image pull (다운로드) / docker image 생성 (build)
-> docker container 생성 (create) : 격리된 프로세스 생성
-> docker container 실행 (start) : application 실행
-> docker container 중지 (stop) -> 재시작 (restart)
-> docker container 삭제 (remove) : application 종료
container 생성 (실행 X)
ex) docker create -it --name test-mysql1 mysql:5.7
container 실행
container 중지
container 삭제, 즉 어플리케이션 실행 종료
실행중인 container는 삭제 불가능 -> 삭제할 때는 먼저 docker stop 명령으로 container 중지 후 삭제
Exited 상태인 container를 모두 삭제
동작 중인 container에 접속
동작 중인 container에 명령 실행
( image download, ) 생성, 실행을 일괄적으로 수행하는 명령
(docker pull +) create + start 명령을 차례대로 입력한 것과 동일한 결과 수행
ex) docker run -d -p 8080:80 --name nginx nginx
ctrl+p, ctrl+q : container에 진입한 상태에서 container를 계속 실행 상태를 유지하면서 빠져나오는 방법
ctrl+d : container에 진입한 상태에서 container를 중지하고 빠져 나오는 방법
docker run -it -d --name <container 이름> <Linux image 이름>
container 진입 : docker attach
container 명령 : docker exec
docker run --name webserver -d -p 8080:80 <webserver image명>
nginx container 실행, host port 8080을 container port 80으로 포트포워딩
-> container는 docker 가상 네트워크 상에서 동작; host 네트워크와는 다른 네트워크 사용
서비스 운영을 하면서 필요한 시스템 metric (CPU/memory 사용률, 네트워크 트래픽 등)을 모니터링 하면서 특이사항이 있을 때 대응하기 위한 모니터링 수행
container 환경 하에서는 기존 모니터링 도구로는 container 모니터링 진행 어려움
-> 구글 제공 cAdvisor (container Advisor)를 사용하면 GUI 방식으로 container에 대한 모니터링 쉽게 수행 가능
docker run \
--volume=/:/rootfs:ro \
--volume=/var/run:/var/run:ro \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
--volume=/dev/disk/:/dev/disk:ro \
--publish=8080:8080 \
--detach=true \
--name=cadvisor \
--privileged \
--device=/dev/kmsg \
gcr.io/cadvisor/cadvisor
cAdvisor 실행 방법 : cAdvisor가 동작 중인 <호스트 IP>:9559
container 리소스 상태 실시간 확인
시각적으로 확인시에는 google cAdvisor 사용
container의 실행 중인 프로세스 상태 확인
host에 있는 파일을 container 내 지정된 위치에 복사
ex) docker cp index.html webserver:/usr/share/nginx/html/index.html
실행 중인 container 목록 출력
실행 중인 container를 제외한 회수 가능한 자원 회수