国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Docker學習與和應用(二)_使用Docker

Ocean / 2924人閱讀

摘要:在前一篇文章學習與和應用一初步認識中,我們初步介紹了解決了什么問題,容器化技術與傳統的虛擬化方式的區別,以及簡要介紹了的幾大核心概念鏡像容器和倉庫。針對上述問題,提供了的,通過使用指令配置的方式來創建鏡像。

在前一篇文章 Docker學習與和應用(一)_初步認識中,我們初步介紹了Docker解決了什么問題,Docker容器化技術與傳統的虛擬化方式的區別,以及簡要介紹了Docker的幾大核心概念:鏡像、容器和倉庫。本文主要介紹Docker的使用,包括:

使用Docker管理鏡像、容器和倉庫

使用Dockerfile創建自定義鏡像

容器的數據管理

Docker的安裝和基礎命令

Docker是建立在Linux內核基礎上的,在目前的主流Linux系統中,都已經原生支持了Docker且使用體驗也最好,當然,在Windows平臺和MacOS系統中也支持Docker,只是需要使用類似Boot2Docker等虛擬化工具來提供Linux支持。關于在各種平臺上安裝Docker的方法參考官網的Docker Docs,這里不再贅述。

Docker提供了很多命令來管理鏡像、容器和倉庫。包括:

從Docker Hub倉庫中查找search、上傳push、下載pull鏡像。

查看本地已有鏡像、容器信息的imagesinspectps命令。

刪除本地鏡像和容器的rmirm命令。

基于已有容器創建鏡像的commit命令和基于Dockerfile創建鏡像build命令。

運行、進入容器的runexecattach命令。

鏡像的保存和導入命令saveload,容器的導出導入命令exportimport

具體命令的使用方法使用命令docker --help查看所有命令列表,使用docker COMMAND --help查看具體命令的信息。下面是我用一張圖總結的Docker的基礎命令,供大家參考。

關于Docker的使用,可以跟著官網提供的示例運行學習 Hello world in a container,另外所有的命令可以查閱官網The Docker commands

使用Dockerfile創建鏡像

創建自定義鏡像的方法有兩種:

從一個鏡像啟動容器后,對容器進行操作更新,然后使用docker commit命令將對鏡像的操作提交。

使用Dockerfile的方式創建自定義的鏡像。

使用docker commit命令的方式構建自定義鏡像(參考Creating our own images),簡單但是不夠方便,此外,由于創建鏡像的過程不夠透明,不利于將鏡像共享給他人使用、同時還不利于團隊審閱鏡像的創建過程。

針對上述問題,docker提供了的Dockerfile,通過使用指令配置的方式來創建鏡像。Dockerfile是由一行行的命令指令組成,通過指令來闡述鏡像的創建過程。從這個角度來看,Dockerfile類似于Makefile等工具,用來自動化構建鏡像。

Dockerfile大體由四部分組成:

指明基礎鏡像指令FROM

維護者信息指令MAINTAINER

鏡像操作指令RUNEVNADDWORKDIR

容器啟動時的執行指令CMDENTRYPOINTUSER

這些指令的使用方法可以參考Docker Tutorial:使用 Dockerfile 實現自動化和官方Docker Doc:Dockerfile reference。使用Dockerfile創建自定義鏡像很簡單,但是要編寫一個高質量的Dockerfile并不容易,除了查閱官方文檔以外,可以參考Docker Hub中社區提供的大量Dockerfile范例。

Docker容器的數據管理

在使用Docker的過程中,必然會涉及到容器的數據管理操作,例如查看容器內應用生成或更新的數據,容器內數據的備份/恢復,容器之間進行數據共享等操作。Docker中數據管理等方式主要有兩種:

數據卷(Data volumes)

數據卷容器(Data volume containers)

數據卷和數據卷容器

數據卷是一個供容器使用的特殊目錄,用來存放持久化或共享數據的地方,而數據卷容器其實就是一個普通容器,只是這個容器專門提供數據卷給其它容器掛載使用,因此,數據卷和數據卷容器之間有著密切的聯系,并不是兩個完全不相關的概念。

當使用docker run或者docker create命令時,使用-v就可以在容器內創建一個數據卷,默認情況下,Docker Engine會在宿主機上的/var/lib/docker/volumes/目錄下創建一個特殊目錄,供容器掛載使用,而掛載了這個數據卷的容器便可以稱為數據卷容器。我們將這種方式,稱為在容器里創建一個數據卷,此外,我們還可以指定掛載一個宿主機的本地目錄到容器中作為數據卷。

如上圖所示,volume container1分別掛載了容器內創建的數據卷/vol1以及指定掛載了一個宿主機中的本地目錄作為數據卷/vol2。而volume container2則只掛載了數據卷/vol2。通過這樣,當我們修改Docker默認數據目錄以及修改掛載的本地宿主機目錄時,數據卷容器中掛載的數據卷/vol1和數據卷vol2中的數據也都會進行變更,反之亦然。

除了上述創建數據卷的方式外,我們還可以使用--volume-from的方式,指定數據卷容器,從而掛載其中的數據卷。還是上圖中,containerA和containerB在使用docker run創建容器時,通過--volume-from選項指定直接使用volume container2中的數據卷/vol2。

數據卷的特性

通過前面所述,我們理解了什么是數據卷和數據卷容器,接下來,簡要總結數據卷的特性:

當我們在創建容器時,數據卷就會自動初始化。

數據卷可以在容器之間共享和復用。

對數據卷的數據的更新,不會影響到鏡像。

對數據卷的修改會立刻生效。

數據卷中的數據會一直存在,直到刪除最后一個掛載該數據卷的容器被刪除時,還需要顯示指定刪除關聯的數據卷。

通過Docker提供的數據卷和數據卷容器的特性和機制,我們可以對容器內的數據進行共享、備份和恢復,增加了容器的容災能力。即使容器在運行過程中發生故障也不用擔心,只需要快速重新創建容器,掛載數據卷即可。當然,在實際生產環境中,還是需要配合支持諸如RAID、DRBD、以及ceph和HDFS等分布式存儲技術來的達到數據的安全性和高可用性。

參考&引用

Docker Tutorial:必備的15條命令

Docker Tutorial:另外15條命令

Docker Doc:Best practices for writing Dockerfiles

Docker Doc:Data volumes & Data volume containers

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/26623.html

相關文章

  • Docker學習與和應用(一)_初步認識

    摘要:分別進行配置和測試。也就是說對于開發和部署來說,使用可以更快速的交付和部署應用環境。更便捷的應用更新管理。使用鏡像創建并啟動一個容器。執行用戶指定的應用程序。執行完畢后,容器被終止。 Docker是為應用的開發和部署提供的一站式容器解決方案,它能幫助開發者高效快速的構建應用,實現Build,Ship and Run Any App, Anywhere,從而達到一次構建,到處運行的目的。...

    kgbook 評論0 收藏0
  • 一篇文章帶你掌握docker基礎知識

    摘要:和區別讓用戶可以進入查看輸出等等操作,但是并不會另外啟動一個進程如果你用來退出,同時這個信號會默認情況會啟動另外一個進程來進入,這里的操作是在這個進程下的。 走在通往docker的大道上——docker基礎知識匯總 最后編輯時間:2017年03月09日 1.Docker是什么 Docker是一種新的容器化技術,為應用開發和部署提供一站式容器解決方案,能幫助開發者高效快速的構建應用,實...

    TANKING 評論0 收藏0
  • Docker學習之路()四種系統下安裝Docker的方法

    摘要:如果查到的不是版的內核,可以用來升級然后更新啟動加載器來加載新內核完成安裝后,重啟宿主機來啟用新的內核重啟之后,可以用確認是否運行了新版本內核。如果是較低版本的系統,需要先更新內核。然后重復上面的步驟即可。 本人的學習筆記,主要是對《我的第一本Docker書》、《Docker —— 從入門到實踐》的學習記錄,并結合其他各種資源的學習。這次記錄了4種常見系統的Docker安裝方法,這些系...

    BetaRabbit 評論0 收藏0
  • SegmentFault 技術周刊 Vol.5 - Docker丨Build, Ship, Run,

    摘要:此刻的后手指依舊飛速地敲打鍵盤,絲毫沒有要停不下來意思。閱讀本期技術周刊,你不光能弄明白什么是,使用的意義何在,還將被傳授秘籍,以達的境界。周刊篩選的每篇內容,是作者的獨到見解,踩坑總結和經驗分享。 showImg(https://segmentfault.com/img/bVC5qJ?w=900&h=385); 啪嗒啪嗒,啪嗒啪嗒,聽到后排動感十足的清脆鍵盤響,我就能猜到公司程序員定...

    Panda 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<