1. 程式人生 > >docker操作容器 - 導入容器、導出容器、查看容器

docker操作容器 - 導入容器、導出容器、查看容器

體積 osi tarball ont ima exp reat 輸出 需要

實驗環境

CentOS 7.5

容器

容器是鏡像的運行實例。不同的是,鏡像是靜態的只讀文件,而容器帶有運行時需要的可寫文件層;同時,容器中的應用進程處於運行狀態。

導入和導出容器

實現容器的遷移。

導出容器

導出容器是指將一個已經創建(不管此時容器是否處於運行狀態)的容器到一個文件。

[root@kvm /opt/collector_module/AI-AOMT/bin/Parser]# docker container export --help
Usage:  docker container export [OPTIONS] CONTAINER
Export a container‘s filesystem as a tar archive
Options:
      --help            幫助信息
  -o, --output string   執行輸出的tar文件名
  • 可用-o參數指定導出的tar文件名;
  • 也可用重定向的方式來實現導出:docker export CONTAINER > TARFILENAME
    技術分享圖片

導入容器

docker import命令可以將導出的容器導入變成鏡像。

[root@kvm ~]# docker import --help
Usage:  docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]
Import the contents from a tarball to create a filesystem image
Options:
  -c, --change list      導入的同時執行對容器進行修改的Dockerfile指令
      --help             幫助信息
  -m, --message string   對導入的鏡像設定同步信息

測試將上邊導出的container_dbdata.tar導入成為新的鏡像:
技術分享圖片

  • 導入後生成的是鏡像不是容器;
  • 導入命令行中的container_dbdata.tar對應成為REPOSITORYv1.0對應成為TAG
  • docker load命令也可以導入一個鏡像存儲文件,跟docker import命令導入鏡像的區別如下:
    • docker import:丟棄了所有的歷史記錄和元數據信息,僅保存容器當時的快照狀態。在導入的時候可以重新制定標簽等元數據信息;
    • docker load:將保存完整記錄,體積較大。

docker操作容器 - 導入容器、導出容器、查看容器