C++ и Docker: контейнеризация приложений — Андрей Соколов — обложка книги
300 страниц
C++
PDF
4.5

C++ и Docker: контейнеризация приложений

Практическое руководство по созданию и развертыванию C++ проектов в контейнерах

Автор:

Год:

Краткое содержимое:

Книга «C++ и Docker: контейнеризация приложений» — это практическое руководство для разработчиков на C++, которые хотят освоить современные подходы к упаковке, доставке и запуску своего кода с помощью контейнеров. В отличие от типичных книг по Docker, ориентированных на веб-разработку на Python или Node.js, это издание фокусируется именно на специфике C++: статической и динамической линковке, управлении зависимостями, оптимизации времени сборки и размера итогового образа.

Для кого эта книга?

  • Для C++ разработчиков, которые хотят упростить развертывание своих приложений и избавиться от проблемы «на моей машине работает».
  • Для DevOps-инженеров, работающих с высоконагруженными системами на C++ и нуждающихся в надежных пайплайнах сборки.
  • Для студентов и начинающих программистов, желающих понять, как современная инфраструктура сочетается с классическим языком.

Что вы узнаете?

  • Основы Docker: образы, контейнеры, Dockerfile, docker-compose.
  • Специфику контейнеризации C++ проектов: работа с системными библиотеками, передача переменных окружения, управление версиями компиляторов (GCC, Clang).
  • Многоэтапную сборку (multi-stage builds) для минимизации размера образа — от 2 ГБ до 50 МБ.
  • Интеграцию с CMake и Conan для управления зависимостями внутри контейнера.
  • Создание легковесных образов на базе Alpine Linux и scratch.
  • Тестирование, отладку и профилирование C++ приложений внутри контейнера.
  • Оркестрацию с помощью docker-compose и Kubernetes для микросервисной архитектуры на C++.
  • Настройку CI/CD пайплайнов (GitHub Actions, GitLab CI) для автоматической сборки и публикации образов.

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

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

Код примеров доступен для скачивания на GitHub, все команды проверены на актуальных версиях Docker 24+ и C++20.

Рекомендаций