[소감] docker export와save의 차이에 대한 간단한 분석

1678 단어 dockerexportsave
실행 중인 미러를 컨테이너라고 합니다.용기를 수정할 수 있지만, 이 수정은 거울에 영향을 주지 않습니다.단, docker commit 명령을 사용하면 실행 중인 용기를 새로운 거울로 만들 수 있습니다.
Export 명령은 미러가 아닌 영구 컨테이너에 사용됩니다.따라서 다음과 같은 방법으로 컨테이너 ID를 얻어야 합니다.
sudo docker ps -a에서 내보내기를 수행합니다.
sudo docker export  > /home/export.tar

Save 명령은 컨테이너가 아닌 영구 미러링에 사용됩니다.따라서 다음과 같은 방법으로 미러 이름을 지정해야 합니다.
sudo docker images

그런 다음 저장을 수행합니다.
sudo docker save busybox-1 > /home/save.tar

마지막 결과는 2.8MB 크기의 Tar 파일입니다. (export 명령을 사용하는 것보다 조금 큽니다.)
dockerrm(dockerps -3 q -3 a)을 사용하여 모든 용기를 한꺼번에 삭제하고, dockerrmi(docker images -q)는 모든 이미지를 한꺼번에 삭제할 수 있습니다.
이제 내보낸 컨테이너 가져오기를 시작합니다.
#   export.tar  
cat /home/export.tar | sudo docker import - busybox-1-export:latest

#     
sudo docker images

#         ,         ,        /home/test  (    )
sudo docker run busybox-1-export [ -d /home/test ] && echo 'Directory found' || echo 'Directory not found'

비슷한 절차를 사용하여 미러를 가져오려면 다음과 같이 하십시오.
#   save.tar  
docker load < /home/save.tar

#     
sudo docker images

#         ,         ,        /home/test  (    )
sudo docker run busybox-1 [ -d /home/test ] && echo 'Directory found' || echo 'Directory not found'

내보낸 버전은 원래 버전보다 조금 작을 것이다.그것은 내보내면 역사와 메타데이터를 잃어버리기 때문이다.다음 명령을 실행하면 알 수 있습니다.
#         (layer)
sudo docker images --tree

      (saveed-loaded)           (layer)。               ,           (layer),  ,                  ,        (    docker tag         )。

좋은 웹페이지 즐겨찾기