Три элемента Docker: образы, контейнеры и репозитории.

Docker

Предыдущая заметкаУчебное пособие по Docker для начинающих: основыМы кратко представили Docker с трех сторон

  1. Что такое Докер?
  2. Почему Докер?
  3. Какие проблемы конкретно решает Docker?

Я считаю, что друзья, которые прочитали эту статью, уже имеют предварительное представление о Docker. Только когда мы полностью поймем чудеса Docker, мы сможем лучше использовать его позже. Далее мы поговорим о самых важных вещах о Docker. три основных концепции,Образы, контейнеры и репозитории

зеркало

Прежде чем понять концепцию зеркалирования, нам необходимо иметь общее представление о файловой системе объединения — UnionFS, которая является основой образов Docker. Файловая система объединения — это многоуровневая, легкая и высокопроизводительная файловая система. Модификации накладываются друг на друга. слой за слоем в качестве представления.В то же время разные каталоги могут быть подключены к одной и той же виртуальной файловой системе.Зеркало может быть интегрировано через слои.Мы можем создавать различные образы различных приложений для удовлетворения наших потребностей.

В то же время для модернизированной ОС rootfs может быть очень маленьким, и есть общие команды.В то же время нижний слой — это непосредственно используемое ядро ​​операционной системы, поэтому размер образа в Docker может быть относительно небольшим, например полная версия Centos может занимать несколько G, но Centos в Docker составляет всего около 300M.

Для Docker Mirror, чиновник определил следующим образом:

Образ представляет собой шаблон, доступный только для чтения, с инструкциями по созданию контейнера Docker. Часто образ основан на другом образе с некоторыми дополнительными настройками. Например, вы можете создать образ, основанный на образе Ubuntu, но устанавливает Веб-сервер Apache и ваше приложение, а также сведения о конфигурации, необходимые для запуска вашего приложения».

Образ — это шаблон только для чтения с инструкциями по созданию контейнера Docker. Часто одно изображение основано на другом с некоторой дополнительной настройкой. Например, вы можете создать образ на основе образа ubuntu, но установить веб-сервер Apache и свое приложение вместе с деталями конфигурации, необходимыми для запуска вашего приложения.

PS: Образ может создавать несколько контейнеров.

контейнер:

Контейнер — это работающий экземпляр, созданный из образа.

Каждый контейнер можно запускать, запускать, останавливать, удалять, при этом контейнеры изолированы друг от друга для обеспечения безопасности приложений во время работы.

Нас можно понимать как оптимизированную версию контейнера операционной системы Linux, включая полномочия root, пространство процесса, пространство пользователя и киберпространство и т. д. Затем они добавляют приложение для повторного запуска поверх него.

Например, теперь мы создаем контейнер на основе образа mysql, тогда в этом контейнере не только одна программа mysql, но и mysql также установлен и работает в среде linux в нашем контейнере.

Отношения между контейнером и изображением:

Прежде чем говорить об этой проблеме, давайте взглянем на следующий код Java:

Person p = new Person();
Person p1 = new Person();
Person p2 = new Person();

Изображение — это наш Person, а контейнер — экземпляр класса Person. Человек может создать несколько экземпляров, а изображение также может создать несколько контейнеров.

склад:

Хранилище относительно легко понять.Склад (Репозиторий) — это место, где файлы изображений хранятся централизованно.

Склад разделен на общественный склад и частный склад.В настоящее время самым большим складом в мире является официальный склад Docker.Docker Hub

Из-за ряда непреодолимых факторов, если мы ведем загрузку общедоступного изображения Docker Hub, это очень болезненное яйцо, которое мы можем сослаться на то, что вы чувствуете при использовании официального сетевого диска Baidu. Таким образом, мы обычно используем внутренний или облачный репозиторий облачных образов Netease Ali.

Отношения между хранилищем контейнеров изображений и тремя следующими:

Суммировать:

Сегодня мы кратко опишем три элемента Docker: образ, контейнер и хранилище.В будущем исследовании мы часто будем встречать две концепции образа и контейнера, а также напишем собственный файл DockerFile для создания собственного файла образа.

Наконец, соответствующие заметки были одновременно открыты для Github (добро пожаловать звездочка):GitHub.com/Хан Шуайкан…