Windows10下的docker安裝與入門 (三) 建立本身的docker鏡像而且在容器中運行它

Docker 是一個開源的應用容器引擎,讓開發者能夠打包他們的應用以及依賴包到一個可移植的容器中,而後發佈到任何流行的 Linux 機器上,也能夠實現虛擬化。容器是徹底使用沙箱機制,相互之間不會有任何接口。html

本教程主要分如下幾點內容:docker

一. 使用docker toolbox安裝dockerwindows

二. 使用docker引擎在容器中運行鏡像學習

三. 建立本身的docker鏡像而且在容器中運行它ui

 ----------------------------------------------------------------------------------------spa

三. 建立本身的docker鏡像而且在容器中運行它htm

在上一個教程中,咱們在Docker容器中運行了whalesay鏡像,但咱們每次運行whalesay鏡像的時候,如:blog

docker run docker/whalesay cowsay boo-boo教程

咱們都不得不在後面添加cowsay boo-boo,才能使的whale可以打印出對應的話boo-boo。接口

在此次教程中,咱們將對whalesay鏡像作一些修改,建立咱們本身的docker鏡像而且在容器中運行它,使得可以讓whale每次都自動說一句話出來

第一步:打開終端

(1)在你的桌面中找到Docker Quickstart Terminal圖標

(2)雙擊圖標啓動Docker Quickstart Terminal

先不要關閉終端,咱們將使用它來建立文件和運行一些命令

第二步:編寫一個Dockerfile文件

在這一步中,你將使用windows的記事原本編寫一個簡單的Dockerfile。 Dockerfile文件描述了當咱們啓動鏡像的時候須要哪些軟件元素。除了軟件元素以外,Dockerfile還可以讓咱們可以在啓動鏡像的時候在容器中運行一些命令或者指明咱們使用什麼樣的環境。

(1) 在終端中輸入 cd Desktop 轉到桌面

(2) 輸入 mkdir testdocker 在桌面上建立一個testdocker文件夾

(3) 輸入 cd testdocker 進入testdocker文件夾

(4) 輸入 touch Dockerfile 建立一個Docker文件在當前目錄。注意這裏的Dockerfile的首字母是大寫的(由於Linux文件名是大小寫敏感的)

(5) 輸入 notepad Dockerfile& 使用windows的記事本打開Dockerfile文件(注意最後面有一個 ‘&’)

(6) 在記事本中輸入 FROM docker/whalesay:latest

FORM 關鍵字告訴Docker咱們的鏡像將基於哪個鏡像。這個的意思是說咱們即將建立的鏡像將給予whalesay鏡像

(7)如今,加入fortunes程序到咱們的景象中

fortunes程序有一個用來打印出一些話的命令,能夠用來做爲咱們的whale說出的話。因此,首先咱們須要先安裝fortunes。

RUN apt-get -y update && apt-get install -y fortunes

這一行命令使用的是apt-get程序來下載和安裝fortunes.

(8) 當你的鏡像安裝完它須要的軟件以後,你就能夠命令當鏡像被加載以後運行軟件

新添加的這一行告訴fortune程序輸出它的結果做爲輸入給cowsay程序(管道)

(9) 保存你的Dockerfile文件

第三步: 用你的Dockerfile文件建立一個鏡像

(1) 在終端中運行 docker build -t docker-whale . 命令(注意最後有一個點‘.’,表示Dockerfile文件在當前的目錄下),這條命令的意思是利用當前目錄下的Dockerfile來建立一個叫作docker-whale的鏡像

而後你就會看到一堆輸出,最後看到成功地建立了 XXX

第四步:運行你新的docker-whale

在這一步中,你將確認你的電腦已經安裝了新的鏡像,而且你能夠運行這個新的鏡像

(1) 在終端中輸入 docker images

顯示了你本地安裝的一些鏡像。你能夠看到你剛剛建立的docker-whale鏡像也在裏面

(2) 輸入 docker run docker-whale 運行docker-whale鏡像

你將看到你的whale自動冒出了一句話出來,而且你每次運行它都會說不一樣的話。

自此,你已經建立了本身的一個鏡像而且成功的運行了!

下一步:

到目前爲止,你已經學會了在windows下安裝docker已經運行和建立簡單的docker鏡像。若是想學習更多關於docker的內容的話,能夠到官方文檔上進行學習。

相關文章
相關標籤/搜索