Национальный цифровой ресурс Руконт - межотраслевая электронная библиотека (ЭБС) на базе технологии Контекстум (всего произведений: 639871)
Контекстум
Антиплагиат Руконтекст

Docker Compose для разработчика (3000,00 руб.)

0   0
Первый авторГадзурас
ИздательствоМ.: ДМК Пресс
Страниц222
ID882602
АннотацияРазработка программного обеспечения становится все сложнее из-за использования различных инструментов. Приложения приходится упаковывать вместе с программными компонентами, чтобы упростить их работу, но это усложняет их запуск. С помощью Docker Compose можно всего одной командой настроить приложение и необходимые зависимости. Вы познакомитесь с основами томов и сетей Docker, с командами Compose, их назначением и вариантами использования. Настроите базу данных для повседневной работы, доступную через сеть Docker, установите связь между микросервисами. Научитесь с помощью Docker Compose запускать целые стеки локально, моделировать промышленные окружения и расширять задания CI/CD. Кроме того, узнаете, как извлечь выгоду из Docker Compose при создании развертываний в промышленных окружениях, а также подготовите инфраструктуру в общедоступных облаках. Издание предназначено программистам и инженерам DevOps, которые желают научиться настраивать многоконтейнерные приложения Docker. Оно также будет полезно руководителям групп, стремящимся повысить продуктивность команд разработки.
ISBN978-5-93700-203-7
Гадзурас, Э. Docker Compose для разработчика / Э. Гадзурас .— Москва : ДМК Пресс, 2023 .— 222 с. — ISBN 978-5-93700-203-7 .— URL: https://rucont.ru/efd/882602 (дата обращения: 23.06.2024)

Предпросмотр (выдержки из произведения)

Docker_Compose_для_разработчика.pdf
Стр.5
Стр.7
Стр.8
Стр.9
Стр.10
Стр.11
Стр.12
Стр.13
Docker_Compose_для_разработчика.pdf
УДК 004.451Docker ББК 32.972.1 Г13 Г13 Docker Compose для разработчика / пер. с англ. А. Н. Киселева. – М.: ДМК Пресс, 2023. – 220 с.: ил. Гадзурас Э. ISBN 978-5-93700-203-7 Разработка программного обеспечения становится все сложнее из-за использования различных инструментов. Приложения приходится упаковывать вместе с программными компонентами, чтобы упростить их работу, но это усложняет их запуск. С помощью Docker Compose можно всего одной командой настроить приложение и необходимые зависимости. Вы познакомитесь с основами томов и сетей Docker, с командами Compose, их назначением и вариантами использования. Настроите базу данных для повседневной работы, доступную через сеть Docker, установите связь между микросервисами. Научитесь с помощью Docker Compose запускать целые стеки локально, моделировать промышленные окружения и расширять задания CI/CD. Кроме того, узнаете, как извлечь выгоду из Docker Compose при создании развертываний в промышленных окружениях, а также подготовите инфраструктуру в общедоступных облаках. Издание предназначено программистам и инженерам DevOps, которые желают научиться настраивать многоконтейнерные приложения Docker. Оно также будет полезно руководителям групп, стремящимся повысить продуктивность команд разработки. УДК 004.451Docker ББК 32.972.1 Copyright © Packt Publishing 2022. First published in the English language under the title ‘A Developer's Essential Guide to Docker Compose – (9781803234366)’. Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. ISBN 978-1-80323-436-6 (англ.) ISBN 978-5-93700-203-7 (рус.) © 2022 Packt Publishing © Перевод, оформление, издание, ДМК Пресс, 2023
Стр.5
Содержание От издательства ....................................................................................................13 Об авторе .................................................................................................................14 О рецензенте .........................................................................................................15 Предисловие ..........................................................................................................16 Часть I. ОСНОВЫ DOCKER COMPOSE ..................................................19 Глава 1. Введение в Docker Compose ........................................................20 Технические требования ...........................................................................................21 Знакомство с Docker Compose и особенностями его использования .................21 Установка Docker Compose ........................................................................................21 Docker Desktop ........................................................................................................22 Установка Docker ....................................................................................................22 В macOS ...............................................................................................................22 В Windows ...........................................................................................................23 В Linux .................................................................................................................25 docker compose и docker-compose ........................................................................27 Знакомство с принципами работы Docker Compose ............................................27 Ваш первый файл Docker Compose ..........................................................................29 Использование образа Docker в Docker Compose ..................................................32 Итоги ............................................................................................................................35 Глава 2. Запуск первого приложения с помощью Compose ..........36 Технические требования ...........................................................................................37 Создание простого приложения ..............................................................................37 Установка Go ...........................................................................................................37 REST API в Go с использованием Gin ..................................................................37
Стр.7
Содержание  7 Приложение ............................................................................................................38 Запуск Redis с помощью Compose ...........................................................................40 Использование командной оболочки в контейнере, управляемом Compose ....41 Взаимодействие со службой Docker Compose ........................................................42 Упаковка приложения с помощью Docker и Compose ..........................................44 Передача конфигурации через окружение ........................................................45 Создание образа Docker ........................................................................................46 Запуск образа..........................................................................................................46 Создание образа с помощью Compose ...............................................................48 Сборка и определение имени образа ......................................................................48 Запуск многоконтейнерного приложения с помощью Compose ...................49 Проверка работоспособности ..........................................................................49 Как действует проверка работоспособности .................................................49 Добавление проверки работоспособности в Compose .................................50 Зависимости от служб ...........................................................................................51 Точка входа, аргументы и переменные окружения .....................................52 Файлы с переменными окружения .................................................................52 Сценарий ............................................................................................................52 Настройка точки входа .....................................................................................53 Метки .......................................................................................................................53 Образы .....................................................................................................................54 Контейнеры ............................................................................................................54 Итоги ............................................................................................................................55 Глава 3. Основы сетей и томов .....................................................................56 Технические требования ...........................................................................................57 Основы томов Docker ................................................................................................57 Подключение тома Docker к контейнеру................................................................57 Общие тома .............................................................................................................59 Тома только для чтения ........................................................................................59 Драйверы томов Docker ............................................................................................60 Использование драйвера тома вместо локального монтирования ...............61 Объявление томов Docker в файлах Compose ........................................................61 Подключение томов Docker к существующему приложению .............................62 Создание конфигурационного файла .....................................................................63 Монтирование файла с использованием тома ......................................................63 Монтирование томов только для чтения ...........................................................64 Основы сетей Docker..................................................................................................66 Мостовая сеть .........................................................................................................67 Мостовая сеть, определяемая пользователем ...............................................67 Сеть хоста ................................................................................................................68 Оверлейная сеть .....................................................................................................68 Определение сетей в конфигурации Compose ......................................................68 Добавление дополнительной сети в текущее приложение .................................70 Итоги ............................................................................................................................72
Стр.8
8  Содержание Глава 4. Выполнение команд Docker Compose.....................................73 Технические требования ...........................................................................................73 Введение в команды Compose ..................................................................................74 Интерфейс командной строки Docker и команды Compose ................................74 Настройка целевого приложения ........................................................................74 Команды подготовки .................................................................................................75 build ..........................................................................................................................75 create ........................................................................................................................76 up ..............................................................................................................................76 Команды управления контейнерами ......................................................................78 exec ...........................................................................................................................78 run ............................................................................................................................78 pause.........................................................................................................................79 unpause ....................................................................................................................79 start и stop ...............................................................................................................80 restart .......................................................................................................................80 kill .............................................................................................................................81 ps ..............................................................................................................................81 Команды освобождения ресурсов ...........................................................................82 down .........................................................................................................................82 rm ..............................................................................................................................84 Команды управления образами ...............................................................................85 Список образов ......................................................................................................86 Извлечение образов ..............................................................................................86 Отправка образов ..................................................................................................87 Локальный реестр Docker в Compose ..................................................................87 Отправка в локальный реестр..............................................................................88 Команды мониторинга .........................................................................................89 logs ...........................................................................................................................89 top .............................................................................................................................90 events .......................................................................................................................90 Другие команды .........................................................................................................91 help ...........................................................................................................................91 version ......................................................................................................................91 port ...........................................................................................................................91 config ........................................................................................................................91 Итоги ............................................................................................................................92 Часть II. ПОВСЕДНЕВНАЯ РАЗРАБОТКА С ПОМОЩЬЮ DOCKER COMPOSE .........................................................................................93 Глава 5. Подключение микросервисов друг к другу .........................94 Технические требования ...........................................................................................95 Микросервис определения местоположения ........................................................95
Стр.9
Содержание  9 Добавление службы определения местоположения в Compose .......................101 Добавление сети для микросервиса местоположения .......................................102 Выполнение запросов к микросервису местоположения ..................................103 Потоковая передача событий задач ......................................................................105 Добавление микросервиса обработки событий задач .......................................107 Итоги ..........................................................................................................................109 Глава 6. Службы мониторинга с Prometheus .......................................110 Что такое Prometheus? .............................................................................................110 Добавление конечной точки для Prometheus ......................................................111 Добавление конечной точки метрик в диспетчер задач ...............................111 Добавление конечной точки метрик в службу определения местоположения ..................................................................................................112 Экспорт метрик из службы событий .................................................................113 Настройка анализа метрик в Prometheus .............................................................114 Добавление Prometheus в сеть Compose ...............................................................116 Отправка метрик в Prometheus .........................................................................118 Первый запрос метрик ............................................................................................119 Добавление уведомления ...................................................................................120 Итоги ..........................................................................................................................122 Глава 7. Комбинирование файлов Compose ........................................123 Технические требования .........................................................................................124 Разделение файлов Compose ..................................................................................124 Основа для диспетчера задач ............................................................................124 Служба определения местоположения .............................................................125 Служба событий ...................................................................................................126 Диспетчер задач ...................................................................................................126 Prometheus ............................................................................................................127 Объединение файлов Compose ..............................................................................128 Выбор файлов Compose для запуска .....................................................................129 Использование Hoverfly ......................................................................................129 Наследование служб ............................................................................................129 Захват трафика с помощью Hoverfly .................................................................130 Извлечение данных для имитации службы определения местоположения ..............................................................................................132 Извлечение данных для имитации службы Pushgateway ..........................132 Адаптация моделирования ............................................................................132 Создание фиктивных приложений с помощью Hoverfly ...............................133 Имитация службы определения местоположения .....................................133 Имитация Pushgateway ...................................................................................133 Создание различных окружений ...........................................................................134 Запуск с включенным захватом ........................................................................134
Стр.10
10  Содержание Запуск с отключенным мониторингом ............................................................135 Запуск приложений по отдельности .................................................................135 Объединение нескольких файлов Compose в один.............................................136 Использование команды config .........................................................................136 Итоги ..........................................................................................................................137 Глава 8. Локальное моделирование промышленного окружения .............................................................................................................138 Технические требования .........................................................................................139 Разделение приватных и общедоступных рабочих нагрузок ...........................139 Настройка локальной службы DynamoDB ............................................................140 Создание таблиц DynamoDB ..............................................................................140 Взаимодействие с локальной DynamoDB .........................................................141 Настройка локальной службы SQS ........................................................................142 Настройка локальной службы S3 ...........................................................................143 Настройка функции Lambda на основе REST .......................................................144 Настройка функции Lambda на основе SQS .........................................................147 Ссылки Docker Compose ......................................................................................148 Соединение функций Lambda ................................................................................149 Итоги ..........................................................................................................................151 Глава 9. Создание расширенных заданий CI/CD ...............................153 Технические требования .........................................................................................154 Введение в CI/CD ......................................................................................................154 Использование действий GitHub Actions с Docker Compose ..............................155 Создание первого действия GitHub Action ......................................................155 Кеширование собранных образов .....................................................................156 Создание образов приложений .........................................................................157 Тестирование приложения Compose ................................................................157 Использование конвейеров Bitbucket с Docker Compose ...................................158 Создание первого конвейера Bitbucket ............................................................158 Кеширование образов Compose и Docker .........................................................159 Создание образов приложений .........................................................................160 Тестирование приложения Compose ................................................................161 Использование Travis с Docker Compose ...............................................................162 Создание первого задания в Travis ...................................................................162 Кеширование Compose ........................................................................................162 Создание образов приложений .........................................................................163 Тестирование приложения Compose ................................................................163 Итоги ..........................................................................................................................164
Стр.11
Содержание  11 Часть III. РАЗВЕРТЫВАНИЕ С ПОМОЩЬЮ DOCKER COMPOSE .......................................................................................165 Глава 10. Развертывание Docker Compose на удаленных хостах ......................................................................................................................166 Технические требования .........................................................................................167 Удаленные хосты Docker .........................................................................................167 Создание удаленного хоста Docker........................................................................167 Создание хоста Docker в AWS EC2 .....................................................................167 Установка Terraform ........................................................................................168 Настройка машины EC2 с включенным SSH ...............................................169 Использование удаленного хоста Docker .........................................................172 Контексты Docker .....................................................................................................173 Развертывание Compose на удаленных хостах ...............................................174 Удаленное развертывание хоста через IDE ..........................................................175 Итоги ..........................................................................................................................176 Глава 11. Развертывание Docker Compose в AWS .............................177 Технические требования .........................................................................................178 Введение в AWS ECS .................................................................................................178 Размещение образов Docker в AWS ECR ...............................................................179 Подготовка ECR с помощью AWS CLI ................................................................179 Создание ECR с помощью Terraform .................................................................180 Хранение файла состояния Terraform ..............................................................181 Отправка образов в ECR......................................................................................182 Адаптация образов приложения Compose .......................................................183 Развертывание приложения в кластере ECS ........................................................184 Запуск приложения Compose в существующем кластере ..................................187 Создание группы журналов ...............................................................................187 Создание приватной сети ...................................................................................188 Группы безопасности ..........................................................................................190 Настройка кластера ECS и балансировщика нагрузки ...................................190 Обновление файла Compose ..............................................................................190 Запуск приложения Compose в существующей инфраструктуре .................191 Расширенные концепции Docker Compose в ECS ................................................192 Обновление приложения ....................................................................................192 Масштабирование приложения ........................................................................193 Использование секретов .....................................................................................194 Итоги ..........................................................................................................................195
Стр.12
12  Содержание Глава 12. Развертывание Docker Compose в Azure ..........................196 Технические требования .........................................................................................196 Введение в ACI ..........................................................................................................197 Отправка контейнеров в реестр Azure ..................................................................197 Сохранение файла состояния Terraform ...........................................................199 Развертывание в ACI ................................................................................................200 Итоги ..........................................................................................................................204 Глава 13. Миграция на конфигурацию Kubernetes с помощью Compose ........................................................................................205 Технические требования .........................................................................................206 Введение в Kubernetes .............................................................................................206 Компоненты Kubernetes и Compose ......................................................................207 Приложения Compose и пространства имен ...................................................207 Службы Compose и службы Kubernetes .............................................................207 Метки .....................................................................................................................208 Сети Compose и сетевые политики Kubernetes ...............................................208 Преобразование файлов с помощью Сompose ....................................................208 Введение в Minikube ................................................................................................210 Развертывание в Kubernetes ...................................................................................212 Итоги ..........................................................................................................................214 Предметный указатель ...................................................................................215
Стр.13

Облако ключевых слов *


* - вычисляется автоматически
Периодика по подписке
Антиплагиат система Руконтекст