Docker

Docker簡單的來說就是應用程式的虛擬化,有別於VM是作業系統的虛擬化

要玩Docker有幾個重點需要注意的,我將它記錄如下:

1.Container : 就是Docker裡面封裝軟體的容器,也就是一個單位,其實他就是一個將很多其他不重要的元件拿掉之後,所剩下的最基本的Linux作業系統

2.Image : 就是一你的軟體的映像檔,當軟體要執行時,Docker會根據image的資料載入container然後才真正執行

3.Share : Docker讓個人或是公司可以分享他的製作好的image給其他使用者使用,利用Docker-Hub https://hub.docker.com/

4.Corss-Platform 使用Docker,你不必在意使用者使用什麼樣的平台(作業系統),他在每個作業系統(Mac,Linux,Window..)上建構了一個containser虛擬化技術,所以只要封裝成Docker的container,就可以在任何的作業系統上運作你的軟體

5.Run 要執行Docker很簡單只要執行以下指令

$docker run [container name]

6.Docker file : 就是Docker Image的描述檔,告訴Docker說這個軟體要運作在什麼樣的環境,還有要執行什麼指令,簡單的說就是一個軟體運作的食譜

7.Build Image: 當dockerfile裡面的敘述都完成後,就可以根據這個敘述檔產生一個Docker Image,很簡單只要打上以下指令:

$docker build -t docker-whale

8.Docker Image Local: 一般來說Docker在執行時會先在本地端Local尋找是否有要執行的映像檔(Docker Image),如果沒有才會去DockerHub上去下載 如果要知道本地端有什麼映像檔(Docker Image)可以使用,只要打上以下指令

$docker images

9.Push image to Docker Hub 如果要將自己製作好的Image Push到Docker Hub,

第一步. 先去Docker Hub申請帳號
第二步. 再來就是將製作好的Image和自己的Docker Hub關聯起來,指令如下:
$docker tag 7d9495d03763 maryatdocker/docker-whale:latest

7d9495d03763 > 就是利用Image的hash code

可以用 $docker images 指令去查看 maryatdocker/docker-whale:latest

就是Docker Hub上面的repository

第三步. push到Docker Hub
$docker push 

10.Remove form local 要移除local的image只要執行以下指令:

$docker rmi -f 7d9495d03763`

11.Pull from you repository 如果要從Docker Hub將指定的container image 抓取下來,只要執行指令:

$docker pull [yourusername/docker-whale]

Leave a Reply

Your email address will not be published. Required fields are marked *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax