Chapter 1: Introduction to Containerization & DockerChapter Brief introduction to containerization, how they compare to virtual machines, Docker and getting the reader ready for the content of the bookSub -Topics1. What are containers2. Containers vs Virtual machines3. Introduction to Docker4. Installing Docker5. Introduction to the Project Chapter 2: Docker 101Chapter Getting started with Docker, running a sample containerSub - 1. Checking if Docker is ready2. Docker client3. Running/stopping/ connecting a Docker container4. Dockerfile brief5. Running a simple container, hands-on some common Docker commands Chapter 3: Building the Python AppChapter Getting to understand the project, APIs involved, pre-requisitesSub - 1. Project description (delivering latest content from Reddit to Telegram messenger)2. Setting up the Python workspace (installing the required libraries, setting up virtualenv)3. Creating a Telegram bot 4. Running the Python application and confirming bot works Chapter 4: Understanding DockerfileChapter Getting to know Dockerfile, the different constructs and conceptsSub - Dockerfile, dockerignoreBase image & using them with "from ..."RUN/CMD/Environment Modifying sample Dockerfile to run our Project Chapter 5: Understanding Docker VolumesChapter Containers are meant for stateless applications. Chapter explains steps needed to persist data Sub - Problem of stateful applications in containersDocker Show how data in containers is lost when container is killed and how Docker volumes avoid Modifying our project Dockerfile to add Docker volumes Chapter 6: Docker NetworkingChapter Overview of Docker networking, linking containersSub - Docker bridged networkUser defined Create a Database container and link it with our project application server container Chapter 7: Multi Container Applications with Docker ComposeChapter Building multi-container applications with Docker composeSub - file referenceLinking/establishing dependencies across containersEnvironment variables across linked Moving our project from separate linked containers to Docker Compose project
Мне книга очень понравилась. В начале каждой главы дается теория какого-либо аспекта работы с контейнерами, а дальше идут упражнения по применению знаний на практике. Они бывают двух видов: в виде абстрактного примера, а также бота для телеграмма, который элемент за элементом разрабатывается с третьей главы и до конца книги. Рассчитана на начинающих пользователей. Немного разочаровала последняя глава, где автор пытается говорить о кубернетисе и оркестрации контейнеров. Эта тема настолько обширна, что те мелкие мазки, которые приводятся, выглядят несколько неуместно.