http://dockone.io/article/113
可以使用 docker save和docker load命令來存出和載入鏡像。
存出鏡像
如果要存出鏡像到本地文件,可以使用docker save命令。例如,存出本地的ubuntu:14.04鏡像爲文件ubuntu_14.04.tar:
$ sudo docker p_w_picpaths REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
ubuntu 14.04 c4ff7513909d 5 weeks ago 225.4 MB
...
$ sudo docker save -o ubuntu_14.04.tar ubuntu:14.04
載入鏡像
可以使用docker load從存出的本地文件中再導入到本地鏡像庫,例如從文件ubuntu_14.04.tar導入鏡像到本地鏡像列表,如下所示:
$ sudo docker load --input ubuntu_14.04.tar
或
$ sudo docker load < ubuntu_14.04.tar
這將導入鏡像以及其相關的元數據信息(包括標籤等),可以使用docker p_w_picpaths命令進行查看。
docker修改鏡像名稱
docker tag ubuntu:14.04 ops/ubuntu:14.04
docker rmi ubuntu:14.04
修改名稱,並刪除之前鏡像。
其中,-t 選項讓Docker分配一個僞終端(pseudo-tty)並綁定到容器的標準輸入上,-i 則讓容器的標準輸入保持打開。
一:常用命令:
其中 <>闊起來的參數爲必選,[]闊起來爲可選
docker version 查看 docker的版本號,包括客戶端、服務端、依賴的 Go等
docker info 查看系統 (docker)層面信息,包括管理的 p_w_picpaths, containers數等
docker search <p_w_picpath> 在 docker index中搜索 p_w_picpath
docker pull <p_w_picpath> 從 docker registry server 中下拉p_w_picpath
docker push <p_w_picpath|repository> 推送一個 p_w_picpath或 repository到 registry
docker push <p_w_picpath|repository>:TAG 同上,指定 tag
docker inspect <p_w_picpath|container> 查看 p_w_picpath或 container的底層信息
docker p_w_picpaths 查看所有鏡像
docker p_w_picpaths -a 列出所有的 p_w_picpaths
docker ps 默認顯示正在運行中的 container
docker ps -l 顯示最後一次創建的 container,包括未運行的
docker ps -a 顯示所有的 container,包括未運行的
docker logs <container> 查看 container的日誌,也就是執行命令的一些輸出
docker rm <container...> 刪除一個或多個 container
docker rm `docker ps -a -q ` 刪除所有的 container
docker ps -a -q | xargs docker rm 同上 , 刪除所有的 container
docker rmi <p_w_picpath...> 刪除一個或多個 p_w_picpath
docker start/stop/restart <container> 開啓 /停止 /重啓 container
docker start -i <container> 啓動一個 container並進入交互模式
docker attach <container> attach一個運行中的 container
docker run <p_w_picpath> <command> 使用 p_w_picpath創建 container並執行相應命令,然後停止
docker run -i -t <p_w_picpath> /bin/bash 使用 p_w_picpath創建 container並進入交互模式 , login shell是/bin/bash
docker run -i -t -p <host_port:contain_port> 將 container的端口映射到宿主機的端口
docker commit <container> [repo:tag] 將一個 container固化爲一個新的 p_w_picpath,後面的 repo:tag可選
docker build <path> 尋找 path路徑下名爲的 Dockerfile的配置文件,使用此配置生成新的 p_w_picpath
docker build -t repo[:tag] 同上,可以指定 repo和可選的 tag
docker build - < <dockerfile> 使用指定的 dockerfile配置文件, docker以 stdin方式獲取內容,使用此配置生成新的 p_w_picpath
docker port <container> <container port> 查看本地哪個端口映射到 container的指定端口,其實用 docker ps也可以看到
1.使用p_w_picpaths新建一個container並登錄
1] 使用p_w_picpath來創建container:
docker run -i -t <p_w_picpath_id> /bin/bash
2] 使用repository來創建container, 這時默認使用tag爲lastest的p_w_picpath:(lastest被忽略,repository+tag)
docker run -i -t ubuntu /bin/bash
2.使用commit將一個container固化爲一個p_w_picpath
提交當前container爲一個p_w_picpath,順便帶上作者信息,並指定repository 和 tag
docker commit -a "Thanks Woo <[email protected]>" a211568679ce<container_id> zhangyao:test
3.attach一個運行中的容器(進入)
進入container:<container_id>
docker attach e2e6c95f0bf5
[Docker exec與Docker attach]