Windows 10 Docker 是2016年度更新後很大的一個進步但(好像)被很多人忽略沒有話題性
這個系列是我的學習筆記也順便推廣這好用的東西
前一篇簡單介紹Docker的安裝, 這篇才是正式開始玩Docker
我們做到了如何以docker指令開始做一些簡單的東西, 和了解有甚麼可以做
但docker沒有部件就甚麼也做不了, 所以我們先要學習如何找部件
docker images指令可以看到我們現在的docker可以使用的組件
而docker search可以找到github上開放抓取的images, 例如如果我們知道有一個image叫hello-world
我們可以打docker search hello-world
我們找到了很多Hello-World, 在結果中的首項有一個名稱是hello-world的images
右方看到星星數(STARS)和OFFICIAL OK, 即是官方發佈的hello-world組件,
另外還有很多其他人發佈的Hello-world, 其他的組件也一樣, 每個人也可以組合, 發行不同的部件
Docker的Image世界五花八門, 我們可以從星星數看到部件是否可靠, 你在日後也可以為部件給星星
要拿到組件, 我們用docker pull NAME 指令, 例如docker pull hello-world
可以看到docker已經抓到hello-world預設的最新(Latest)版本而且下載回來了
再試試docker images, 可以看到我們的存庫裡有一個hello-world部件, 每個部件都有一個特別的Image ID以資識別
image的名稱可以是一樣的, 但他們會有不同的TAG和Image ID, 在日後啟動時用作分別版本
那我們怎麼知道Hello-world還有甚麼版本? 暫時docker沒有很容易的指令查詢方式
但有些用家已經選寫了工具來查詢docker hub上所有的Tags, 我自己使用的是
harisekhon/pytools dockerhub_show_tags.py 這個 python工具, 原創者的github頁面是
https://github.com/harisekhon/pytools
例如我們可以這樣
docker run harisekhon/pytools dockerhub_show_tags.py hello-world
沒有使用過的話會需要先下載回來
最後我們得知hello-world有兩個tag的版本可以抓取, 就是latest和nanoserver.
又例如我們想知道mysql有多少個tag可以取用?
先看看是不是有mysql這個東西docker search mysql,
啊有的, 而且有正廠出品, 名稱正正就叫mysql
我們看看他有幾個tag可以選擇
docker run harisekhon/pytools dockerhub_show_tags.py mysql
哇...超誇張的從5.0到8.0.0都有, 如果我們要限定抓取一個特定的版本而非最新版本要如何做?
我們可以在上面的docker pull指令上補上TAG來告訴docker我們想要的是那一個tag的版本, 例如
docker pull mysql:5.7.9
再看看docker images, 我們已經拿到5.7.9版本的Mysql了...如果我們再拿8.0.0版本的又會怎樣?
現在可以看到了, 我們的docker現在可以用的有1年前發行的5.7.9, 也有2星期前的8.0.0
現在我們知道怎樣找到適合的組件了, 那怎樣使用? 下一篇我們來看看 ;)