倉庫
映象構建完成後,可以很容器的在當前宿主機上執行,但是,如果需要在其它伺服器上使用這個映象,我們就需要乙個集中的儲存、分發映象的服務,docker registry 就是這樣的服務。
乙個 docker registry 中可以包含多個倉庫(repository);每個倉庫可以包含多個標籤(tag);每個標籤對應乙個映象。
通常,乙個倉庫會包含同乙個軟體不同版本的映象,而標籤就常用於對應該軟體的各個版本。我們可以通過:《標籤》的格式來指定具體是這個軟體哪個版本的映象。如果不給出標籤,將以 latest 作為預設標籤。
倉庫名經常以兩段式路徑形式出現,比如 jwilder/nginx-proxy,前者往往意味著 docker registry 多使用者環境下的使用者名稱,後者則往往是對應的軟體名。但這並非絕對,取決於所使用的具體 docker registry 的軟體或服務。
docker registry 公開服務
最長使用的 registry 公開服務是官方的 docker hub,這也是預設的 registry,並擁有大量的高質量的官方映象。此外還要coreos的quay.io,coreos相關的映象儲存在這裡;google的google container registry,kubernetes的映象是喲還給你的就是這個服務。
國內也有一些雲服務商提供類似於 docker hub 的公開服務。比如 時速雲映象倉庫、網易雲映象倉庫、daocloud映象市場、阿里雲映象庫等。
私有 docker registry
除了使用公開服務外,使用者還可以在本地搭建私有 docker registry。docker 官方提供了 docker registry 映象,可以直接使用作為私有 registry 服務。在私有倉庫一節中,會有進一步的搭建私有 registry 服務的講解。
開源的 docker registry 映象只提供了 docker registry api 的服務端實現,足以支援 docker 命令,不影響使用。但不包含圖形介面,以及映象維護、使用者管理、訪問控制等高階功能。在官方的商業化版本 docker trusted registry 中,提供了這些高階功能。
除了官方的 docker registry 外,還有第三方軟體實現了 docker registry api,甚至提供了使用者介面以及一些高階功能。比如:vmware harbor 和 sonatype nexue。
概念易混淆部分
倉庫(repository)是集中存放映象的地方。
乙個容易混淆的概念是註冊伺服器(registry)。實際上註冊伺服器是管理倉庫的具體伺服器,每個伺服器上可以有多個倉庫,而每個倉庫下面有多個映象。從這方面說,倉庫可以被認為是乙個具體的專案或目錄。例如對於倉庫位址 d1.dockerpool.com/ubuntu 來說,d1.dockerpool.com 是註冊伺服器位址,ubuntu 是倉庫名。
docker 三大核心概念
映象 容器 倉庫是docker的三大核心概念。docker映象類似於虛擬機器映象,你可以將其理解為乙個唯讀模板。docker容器類似於乙個輕量級的沙箱,docker利用容器來執行和隔離應用。容器是從映象建立的應用執行例項。可以將其啟動 開始 停止 刪除,而這些容器都是彼此相互隔離的 互不可見的。映象...
Docker的三大核心概念
docker的三大核心為 映象 容器 倉庫。下面簡單的介紹一下這三大核心概念。1.docker映象 p w picpath 映象是建立docker容器的基礎,docker映象類似於虛擬機器映象,可以將它理解為乙個面向docker引擎的唯讀模組,包含檔案系統。建立映象有三種方法 1 基於已有映象的容器...
Docker基礎概念
一 什麼是docker?docker 是乙個基於go語言實現的開源應用容器專案,讓開發者可以打包他們的應用以及依賴包到乙個可移植的容器中,然後發布到任何流行的 linux機器上,也可以實現虛擬化。docker的構想是要實現對應用元件級別的 一次封裝 到處執行 這裡的應用元件,既可以是乙個web應用 ...