1. 程式人生 > >Docker常用指令及使用場景(不定時補充)

Docker常用指令及使用場景(不定時補充)

首先要獲取一個映象,比如ubuntu

docker pull ubuntu

此刻預設到Docker Hub中下載映象;
如果需要從第三方倉庫下載,比如Dockerpool

sudo docker pull dl.dockerpool.com:5000/ubuntu

上傳映象到倉庫

docker push ubuntu

預設也是上傳到Docker Hub,需要輸入賬號密碼;

檢視下載好的映象

sudo docker images

根據該映象生成容器,比如直接進入到該映象的ubuntu系統,並可輸入指令

docker run -t -i  ubuntu /bin/bash

這樣就會進入容器內的指令行輸入

檢視目前所有的容器及它們的執行情況

sudo docker ps -a

想刪除某個映象,需要先刪除它的容器,這樣的操作比較規範,當然直接 -f去強制刪除也可以,但是會出現一些小問題,強制刪除執行時的容器,也是通過 -f指令

刪除容器

 sudo docker rm 容器名稱

刪除映象

sudo docker rmi 映象名稱

這裡寫程式碼片

強制刪除

sudo docker rmi -f 映象名稱

sudo docker rm -f 容器名稱

如果想後臺方式建立容器並啟動

sudo run -idt 映象名稱

啟動某個已存在容器

sudo docker start 容器名稱

進入某個容器

sudo attach 容器名稱

本地方式備份映象

docker save -o 本地.tar 映象ID

本地方式備份容器

docker export 容器名稱 >A.tar

注意不管是映象的備份還是容器的備份,匯入都是生成映象

匯入本地映象備份

docker load --imput 本地.tar

匯入本地容器備份

$ cat ubuntu.tar | sudo docker import - test/ubuntu:v.0
$ sudo docker images
REPOSITORY          TAG                 IMAGE ID            CREATED              VIRTUAL SIZE
test/ubuntu         v.0
9d37a6082e97 About a minute ago 7.3 MB

區別在於:
容器快照會丟棄所有的歷史記錄和元資料記錄,只保留容器當時備份的狀態;
映象記錄會儲存完整記錄,所以映象記錄會較大;

建立快照方式,備份當前容器

根據當前容器建立快照

# docker commit -p 30b8f18f20b4 container-backup

這裡寫圖片描述

該命令會生成一個作為Docker映象的容器快照,我們可以通過執行 docker images 命令來檢視Docker映象,如下。
這裡寫圖片描述

正如我們所看見的,上面做的快照已經作為Docker映象儲存了。現在,為了備份該快照,我們有兩個選擇,一個是我們可以登入進Docker註冊中心,並推送該映象;另一個是我們可以將Docker映象打包成tar包備份,以供今後使用。