Docker 入門到實踐(四)Docker 使用鏡像

1、獲取鏡像

Docker Hub 上有大量的高質量的鏡像讓咱們獲取,命令爲:nginx

docker pull [選項] [Docker Registry 地址[:端口號]/]倉庫名[:標籤]

具體的選項能夠經過 docker pull --help 來查看。redis

[Docker Registry 地址[:端口號]/] :這個指的就是 域名/IP[:端口號],默認就是 Docker Hub 的地址。docker

倉庫名[:標籤]:倉庫名是一個兩段式名稱,是 <用戶名>/<軟件名>,用戶名默認是 library,也就是官方鏡像。shell

例如:ubuntu

$ docker pull ubuntu:18.04
18.04: Pulling from library/ubuntu bf5d46315322: Pull complete 9f13e0ac480c: Pull complete e8988b5b3097: Pull complete 40af181810e7: Pull complete e6f7c7e5c03e: Pull complete Digest: sha256:147913621d9cdea08853f6ba9116c2e27a3ceffecf3b492983ae97c3d643fbbe Status: Downloaded newer image for ubuntu:18.04

如上圖所示,沒有給出鏡像地址,docker 便會去 Docker Hub 上獲取,而倉庫名是  library/ubuntu,標籤是 18.04,默認就是 library,官方鏡像。centos

2、運行鏡像

docker run -i -t --rm --name my_ubuntu ubuntu:18.04 bash
root@e7009c6ce357:/# cat /etc/os-release NAME="Ubuntu" VERSION="18.04.1 LTS (Bionic Beaver)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 18.04.1 LTS" VERSION_ID="18.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=bionic UBUNTU_CODENAME=bionic

咱們來解釋一下各個參數的意義。bash

  • -i : 交互式操做。
  • -t : 開啓一個終端。
  • --rm : 指的是容器運行退出以後自動刪除容器,這裏咱們只是運行試試看,不須要保留所創造的容器。
  • --name : 是給你所創造的容器起的名字。
  • ubuntu:18.04 :這是鏡像的名字
  • bash : 跟在鏡像後面的是命令,咱們但願有個交互式的 shell,所以用的是 bash。

cat /etc/os-release 查看系統版本命令,結果中咱們看到系統是 ubuntu:18.04 LTS,而後輸入 exit 退出容器。ionic

3、列出鏡像

$ docker image ls
REPOSITORY                  TAG                 IMAGE ID            CREATED             SIZE
centos                      latest              0584b3d2cf6d        3 weeks ago         196.5 MB
redis                       alpine              501ad78535f0        3 weeks ago         21.03 MB
docker                      latest              cf693ec9b5c7        3 weeks ago         105.1 MB
nginx                       latest              e43d811ce2f4        5 weeks ago         181.5 MB

列表裏包括了  倉庫名,標籤,鏡像 ID,建立時間,鏡像大小。ui

因爲 Docker 使用 Union FS,相同的鏡像層秩序保存一個,因此鏡像大小不表明實際佔有硬盤大小。spa

能夠經過使用一下命令查看鏡像,容器,數據卷佔用硬盤狀況:

$ docker system df

TYPE                TOTAL               ACTIVE              SIZE                RECLAIMABLE
Images              24                  0                   1.992GB             1.992GB (100%)
Containers          1                   0                   62.82MB             62.82MB (100%)
Local Volumes       9                   0                   652.2MB             652.2MB (100%)
Build Cache                                                 0B                  0B

 4、刪除鏡像

若是要刪除本地鏡像,那麼使用下面的格式:

$ docker image rm [選項] <鏡像1> [<鏡像2> ...]

 上面的鏡像通常是指 鏡像ID,或者鏡像名來刪除

鏡像 ID 分爲長 ID 和短 ID,一般咱們 docker images 顯示的就是短 ID 了,可是刪除鏡像時,使用短 ID 的前三個字符通常就能夠區分鏡像了。例如刪除上面的 redis 鏡像:

$ docker image rm 501
Untagged: redis:alpine
Untagged: redis@sha256:f1ed3708f538b537eb9c2a7dd50dc90a706f7debd7e1196c9264edeea521a86d
Deleted: sha256:501ad78535f015d88872e13fa87a828425117e3d28075d0c117932b05bf189b7
Deleted: sha256:96167737e29ca8e9d74982ef2a0dda76ed7b430da55e321c071f0dbff8c2899b
Deleted: sha256:32770d1dcf835f192cafd6b9263b7b597a1778a403a109e2cc2ee866f74adf23
Deleted: sha256:127227698ad74a5846ff5153475e03439d96d4b1c7f2a449c7a826ef74a2d2fa
Deleted: sha256:1333ecc582459bac54e1437335c0816bc17634e131ea0cc48daa27d32c75eab3
Deleted: sha256:4fc455b921edf9c4aea207c51ab39b10b06540c8b4825ba57b3feed1668fa7c7

 還可使用鏡像名字刪除,這裏的鏡像名字指的是 倉庫名:標籤,例如刪除上面的 centos 鏡像:

$ docker image rm centos
Untagged: centos:latest
Untagged: centos@sha256:b2f9d1c0ff5f87a4743104d099a3d561002ac500db1b9bfa02a783a46e0d366c
Deleted: sha256:0584b3d2cf6d235ee310cf14b54667d889887b838d3f3d3033acd70fc3c48b8a
Deleted: sha256:97ca462ad9eeae25941546209454496e1d66749d53dfa2ee32bf1faabd239d38
相關文章
相關標籤/搜索