English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Docker 架構

Docker include tre concetti fondamentali:

  • Immagine (Image):L'immagine Docker (Image) è equivalente a un file system di root. Ad esempio, l'immagine ufficiale ubuntu:16.04 include un set completo di file system di root del sistema operativo Ubuntu16.04 minimo.

  • Container (Container):La relazione tra immagine (Image) e container (Container) è simile alla relazione tra classe e esempio nel design del programma orientato agli oggetti, dove l'immagine è una definizione statica e il container è l'entità reale in esecuzione dell'immagine. Il container può essere creato, avviato, fermato, eliminato, sospeso, ecc.

  • Deposito (Repository):Il deposito può essere considerato come un centro di controllo del codice, utilizzato per conservare immagini.

Docker utilizza il modello di architettura client-server (C/S) e utilizza API remote per gestire e creare container Docker.

I container Docker vengono creati attraverso le immagini Docker.

La relazione tra container e immagini Docker è simile alla relazione tra oggetti e classi nel programmazione orientata agli oggetti.

DockerOrientato agli oggetti
ContainerOggetto
ImmagineClasse

ConcettoSpiegazione

Immagini Docker

Un'immagine Docker è un modello utilizzato per creare container Docker, come il sistema Ubuntu.

Container Docker

Un container è un'applicazione o un gruppo di applicazioni che eseguono in modo indipendente, è l'entità reale in esecuzione dell'immagine.

Client Docker

Il client Docker utilizza la riga di comando o altri strumenti per utilizzare Docker SDK (https://docs.docker.com/develop/sdk/) 与 Docker 的守护进程通信。

Docker 主機(Host)

一個物理或虛擬的機器用於執行 Docker 守護進程和容器。

Docker Registry

Docker 仓库用于保存映像,可以理解为代码控制中的代码仓库。

Docker Hub(https://hub.docker.com) 提供了大量的映像集合供使用。

一個 Docker Registry 中可以包含多個存儲庫(Repository);每個存儲庫可以包含多個標籤(Tag);每個標籤對應一個映像。

通常,一個存儲庫會包含同一軟件不同版本的映像,而標籤常用于對應該軟件的各個版本。我們可以通過 <存儲庫名>:<標籤> 的格式來指定具體是這個軟件哪個版本的映像。如果不提供標籤,則將以 latest 作為默認標籤。

Docker Machine

Docker Machine è uno strumento di riga di comando che semplifica l'installazione di Docker, che può essere installato su piattaforme come VirtualBox, Digital Ocean, Microsoft Azure con un singolo comando.