C++ e Docker: conteinerização de aplicações
C++ e Docker: conteinerização de aplicações
Resumo:
O livro «C++ e Docker: conteinerização de aplicações» é um guia prático que preenche a lacuna entre o desenvolvimento clássico em C++ e as práticas modernas de DevOps. Na era dos microsserviços e das tecnologias em nuvem, saber empacotar aplicações C++ em contêineres torna-se uma habilidade obrigatória para todo desenvolvedor.
Sobre o que é este livro?
Você aprenderá como transformar a compilação caótica de projetos C++ em um processo reproduzível e automatizado com Docker. O livro começa com os fundamentos: o que são imagens e contêineres, como funcionam as compilações em múltiplas etapas (multi-stage builds) e por que elas são críticas para C++. Em seguida, você passará para tópicos avançados:
- Criação de imagens leves com um conjunto mínimo de dependências (Alpine, eliminação de bibliotecas desnecessárias);
- Integração de CMake, Conan e vcpkg com Docker para gerenciamento de dependências;
- Configuração de DevContainers para desenvolvimento confortável no VS Code e CLion;
- Organização de pipelines CI/CD (GitLab CI, GitHub Actions) para compilação e teste automáticos;
- Perfilamento e depuração de aplicações multithread dentro de contêineres;
- Segurança: execução de contêineres com privilégios limitados, varredura de vulnerabilidades.
Para quem é este livro?
- Desenvolvedores C++ que desejam simplificar a implantação de seus projetos;
- Engenheiros DevOps que trabalham com sistemas de alta carga em C++;
- Estudantes e profissionais que estão migrando da compilação "crua" com g++ para o desenvolvimento industrial;
- Todos que estão cansados da frase "na minha máquina funciona" e desejam obter compilações previsíveis.
O que você aprenderá?
- Como reduzir o tamanho da imagem de uma aplicação C++ em 10 vezes sem perda de desempenho;
- Como organizar o recarregamento a quente (hot reload) durante o desenvolvimento em contêiner;
- Como testar interações de rede e algoritmos distribuídos em ambiente isolado;
- Como implantar serviços C++ no Kubernetes com custos mínimos de memória.
O livro contém mais de 50 exemplos práticos, Dockerfiles prontos e arquivos docker-compose.yml. Todos os exemplos foram testados no GCC 13, Clang 17 e na versão mais recente do Docker Desktop. Você receberá não apenas teoria, mas modelos funcionais que poderá aplicar imediatamente em seus projetos.
O autor — Alexei Sokolov, engenheiro com 10 anos de experiência em sistemas de alta carga e autor de cursos sobre C++ e DevOps. Sua abordagem combina rigor acadêmico com casos reais de produção.
Recommendations
Teste de aplicações PHP: de testes unitários a CI/CD
Desempenho de aplicações JavaScript (Node.js)
Go (Golang): dicas e melhores práticas
Concorrência em C++: Multithreading, Assincronia e Paralelismo
Teste de Unidade Prático com JUnit e Mockito
Programação de Rede em C++. Volume 1: Dominando a Complexidade com ACE e Padrões