Файл: Docker Контейнеризация.pptx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.01.2024

Просмотров: 58

Скачиваний: 5

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Docker

Контейнеризация

Docker 

Docker 

Docker 

Основной принцип работы Docker

1. Docker-демон (Docker-daemon)

2. Docker-клиент (Docker-client / CLI) 

3. Docker-образ (Docker-image)

. 4. Docker-файл (Dockerfile) 

5. Docker-контейнер (Docker-container)

6. Том (Volume) 

7. Реестр (Docker-registry)

зарезервированный сервер, используемый для хранения docker-образов.

Docker Engine

Элементы DockerEngine

Как работает Docker?

Как работает Docker?

Как работает Docker?

Как работают контейнеры?

Как работают контейнеры?

Что происходит при запуске контейнера?

DockerCompose

DockerCompose необходим для управления несколькими контейнерами, из которых состоит проект.

Где используют Docker?

Где используют Docker?

Основные команды Докер

Основные команды Докер

Информационные команды

Информационные команды

если требуется узнать информацию по поводу команды или вспомнить что она делает, то всегда можно прописать опцию --help в конце: docker info --help

Контейнеры и образы

Посмотреть информацию про все запущенные образы можно при помощи команды docker images.

Для отображения информации относительно всех контейнеров можно использовать команду docker ps -a.

2. docker pull  —  большинство образов создаётся на основе базового образа из DockerHub.

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

3. docker build  —  эта команда собирает образ Docker из Dockerfile и «контекста».

Например, команда dockerbuild -t my_container. соберёт образ, используя текущую директорию, на что указывает точка в конце.

4. docker run  —  запускает контейнер, на основе указанного образа.

5. docker logs  —  эта команда используется для просмотра логов указанного контейнера.

docker volumels  —  показывает список томов, которые являются предпочитаемым механизмом для сохранения данных, генерируемых и используемых контейнерами Docker.

Популярные команды в Docker

7. docker rm  —  удаляет один и более контейнеров, например, dockerrmmy_container.

8. docker rmi  —  удаляет один и более образов

9. docker stop  —  останавливает один и более контейнеров.

Docker run -- help

Список контейнеров

Установка и использование Docker

Предварительные требования

Установка Docker

Docker

Контейнеризация


является альтернативой аппаратной виртуализации
Все процессы в ней протекают на уровне операционной системы, что позволяет существенно экономить ресурсы и увеличивать эффективность работы с приложениями.

Docker 


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

Docker 


более эффективного использования системы и ресурсов.
быстрого развертывания готовых программных продуктов.
для масштабирования программ и переноса в другие среды с гарантированным сохранением стабильной работы.

Docker 


Работает в Linux
На платформах, отличных от Linux, существуют специальные утилиты Kitematic или DockerMachine.

Основной принцип работы Docker


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

1. Docker-демон (Docker-daemon)


Сервер контейнеров, входящий в состав программных средств Docker.
Демон управляет Docker-объектами (сети, хранилища, образы и контейнеры).
Демон также может связываться с другими демонами для управления сервисами Docker.

2. Docker-клиент (Docker-client / CLI) 


интерфейс взаимодействия пользователя с Docker-демоном.
Клиент и Демон – важнейшие компоненты «движка» Докера (DockerEngine).
Клиент Docker может взаимодействовать с несколькими демонами

3. Docker-образ (Docker-image)


 файл, включающий зависимости, сведения, конфигурацию для дальнейшего развертывания и инициализации контейнера.

. 4. Docker-файл (Dockerfile) 


описание правил по сборке образа, в котором первая строка указывает на базовый образ.
Последующие команды выполняют копирование файлов и установку программ для создания определенной среды для разработки.

5. Docker-контейнер (Docker-container)


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

6. Том (Volume) 


эмуляция файловой системы для осуществления операций чтения и записи.
создается автоматически с контейнером, поскольку некоторые приложения осуществляют сохранение данных.

7. Реестр (Docker-registry)

зарезервированный сервер, используемый для хранения docker-образов.

Docker Engine


Docker Engine («Движок» Docker) — ядро механизма Докера. «Движок» отвечает за функционирование и обеспечение связи между основными Docker-объектами (реестром, образами и контейнерами).

Элементы DockerEngine


1. Сервер выполняет инициализацию демона (фоновой программы), который применяется для управления и модификации контейнеров, образов и томов.
2. REST API — механизм, отвечающий за организацию взаимодействия Докер-клиента и Докер-демона.
3. Клиент — позволяет пользователю взаимодействовать с сервером при помощи команд, набираемых в интерфейсе (CLI).

Как работает Docker?


1. Пользователь отдает команду с помощью клиентского интерфейса Docker-демону, развернутому на Docker-хосте.
Например, скачать готовый образ из реестра (хранилища Docker-образов)
Взаимодействие между клиентом и демоном обеспечивает REST API.
Демон может использовать публичный (DockerHub) или частные реестры.

Как работает Docker?


2. Исходя из команды, заданной клиентом, демон выполняет различные операции с образами на основе инструкций, прописанных в файле Dockerfile.
Например, производит их автоматическую сборку с помощью команды dockerbuild.

Как работает Docker?


3. Работа образа в контейнере

Как работают контейнеры?


Каждый контейнер строится на основе Docker-образов.
Контейнеры запускаются напрямую из ядра операционной системы Linux.
Потребляют гораздо меньше ресурсов, чем при аппаратной виртуализации.

Как работают контейнеры?


Изоляция рабочей среды осуществляется при помощи технологии namespace.
Для каждого изолированного пространства (контейнера) создается уникальное пространство имен, которое и обеспечивает к нему доступ.


Любой процесс, выполняемый внутри контейнера, ограничивается namespace.

Что происходит при запуске контейнера?


1. Происходит запуск образа (Docker-image). DockerEngine проверяет существование образа. Если образ уже существует локально, Docker использует его для нового контейнера. При его отсутствии выполняется скачивание с DockerHub.
2. Создание контейнера из образа.
3. Разметка файловой системы и добавление слоя для записи.
4. Создание сетевого интерфейса.
5. Поиск и присвоение IP-адреса.
6. Запуск указанного процесса.
7. Захват ввода/вывода приложения.

DockerCompose

DockerCompose необходим для управления несколькими контейнерами, из которых состоит проект.


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

Где используют Docker?


1. Быстрая доставка приложений (команды dockerpull и dockerpush) позволяет организовать коллективную работу над проектом.
2. Развертывание и масштабирование — контейнеры работоспособны на локальных компьютерах, серверах, в облачных онлайн-сервисах. Их можно загружать на хостинг для дальнейшего тестирования.
3. Множественные нагрузки — осуществление запуска большого количества контейнеров на одном и том же оборудовании, поскольку Docker занимает небольшой объем дисковой памяти.

Где используют Docker?


4. Диспетчер процессов — возможность мониторинга процессов в Docker посредством команд dockerps и dockertop, имеющими схожий синтаксис с Linux.
5. Данные приложений в одном, нужном месте, благодаря чему их проще будет переносить.
6 Запустить приложение любой сложности на любой системе всего в пару нажатий клавиш при помощи всего лишь одного Dockerfile файла. Или docker-compose.yml, если нужно запустить пачку сервисов.

Основные команды Докер

Основные команды Докер


Технология Докер в основном используется внутри проектов.
Для создания и выполнения каких-либо действий необходимо прописывать команды в терминале. 

Информационные команды


отвечают за выдачу информацию относительно Докера, запущенных в ней контейнеров и образов.
Наиболее простой командой является команда docker.
При её выполнении вы получаете список всех возможных команд вместе с их кратким описанием.


Информационные команды


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

если требуется узнать информацию по поводу команды или вспомнить что она делает, то всегда можно прописать опцию --help в конце: docker info --help


Контейнеры и образы

Посмотреть информацию про все запущенные образы можно при помощи команды docker images.

Для отображения информации относительно всех контейнеров можно использовать команду docker ps -a.


1. docker ps  — показывает список запущенных контейнеров. Некоторые из полезных флагов:
-a / –all — список всех контейнеров (по умолчанию показывает только запущенные);
-q / –quiet — перечислить только id контейнеров (полезно, когда вам нужны все контейнеры).

2. docker pull  —  большинство образов создаётся на основе базового образа из DockerHub.

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

3. docker build  —  эта команда собирает образ Docker из Dockerfile и «контекста».


Контекст сборки — это набор файлов, расположенных по определённому пути или URL.
Используйте флаг -t, чтобы задать имя образа.

Например, команда dockerbuild -t my_container. соберёт образ, используя текущую директорию, на что указывает точка в конце.


4. docker run  —  запускает контейнер, на основе указанного образа.


Эту команду можно дополнять другими, например, docker run my_image –it bash запустит контейнер, а затем запустит в нём bash.

5. docker logs  —  эта команда используется для просмотра логов указанного контейнера.


Можно использовать флаг –follow, чтобы следить за логами работающей программы: dockerlogs –followmy_container.

docker volumels  —  показывает список томов, которые являются предпочитаемым механизмом для сохранения данных, генерируемых и используемых контейнерами Docker.

Популярные команды в Docker

7. docker rm  —  удаляет один и более контейнеров, например, dockerrmmy_container.


8. docker rmi  —  удаляет один и более образов

9. docker stop  —  останавливает один и более контейнеров.


Команда docker stop my_container остановит один контейнер, а docker stop $(dockerps -a -q) — все запущенные.
Более грубый способ — использовать docker kill my_container, который не пытается сначала аккуратно завершить процесс.

Docker run -- help


docker search ubuntu

Список контейнеров

Установка и использование Docker


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

Предварительные требования


Для выполнения этого руководства вам потребуется следующее:
Один сервер Debian, настроенный в соответствии с руководством по начальной настройке сервера Debian, включая пользователя sudo без прав root и брандмауэр.
Учетная запись на Docker Hub, если вы хотите создавать собственные образы и загружать их на Docker Hub

Установка Docker


Чтобы установить самую актуальную версию будем устанавливать Docker из официального репозитория Docker.
Для этого добавим новый источник пакета,
Ключ GPG от docker, чтобы гарантировать загрузку рабочих файлов,
Затем установим пакет.