▶Book Description
Docker is an open source platform for building, shipping, managing, and securing containers. Docker has become the tool of choice for people willing to work with containers. Since the market is moving toward containerization, Docker will definitely have a big role to play in the future tech market.
This book starts with setting up Docker in different environment, and helps you learn how to work with Docker images. Then, you will take a deep dive into network and data management for containers. The book explores the RESTful APIs provided by Docker to perform different actions, such as image/container operations. The book then explores logs and troubleshooting Docker to solve issues and bottlenecks. You will gain an understanding of Docker use cases, orchestration, security, ecosystems, and hosting platforms to make your applications easy to deploy, build, and collaborate on. The book covers the new features of Docker 18.xx (or later), such as working with AWS and Azure, Docker Engine, Docker Swarm, Docker Compose, and so on.
By the end of this book, you will have gained hands-on experience of finding quick solutions to different problems encountered while working with Docker.
▶What You Will Learn
⦁ Install Docker on various platforms
⦁ Work with Docker images and containers
⦁ Container networking and data sharing
⦁ Docker APIs and language bindings
⦁ Various PaaS solutions for Docker
⦁ Implement container orchestration using Docker Swarm and Kubernetes
⦁ Container security
⦁ Docker on various clouds
▶Key Features
⦁ Leverage practical examples to manage containers efficiently
⦁ Integrate with orchestration tools such as Kubernetes for controlled deployments
⦁ Learn to implement best practices on improving efficiency and security of containers
▶Who This Book Is For
Book is targeted towards developers, system administrators, and DevOps engineers who want to use Docker in his/her development, QA, or production environments.
It is expected that the reader has basic Linux/Unix skills such as installing packages, editing files, managing services, and so on.
Any experience in virtualization technologies such as KVM, XEN, and VMware will be an added advantage
▶What this book covers
⦁ Chapter 1, Introduction and Installation, compares containers with bare metal and virtual machines. It helps you understand Linux kernel features, that enable containerization; finally, we'll take a look at installation recipes.
⦁ Chapter 2, Working with Docker Containers, explains the different operations you can perform with containers, such as starting, stopping, listing, and deleting.
⦁ Chapter 3, Working with Docker Images, introduces you to Docker Hub and shows you how to share images through Docker Hub and how to host your own Docker registry. It will also show you the different ways to build your own image, along with a few Docker image housekeeping operations.
⦁ Chapter 4, Network and Data Management for Containers teaches you how to access the container from the outside world, share external storage within the container, communicate with containers running on other hosts, and more.
⦁ Chapter 5, Docker Use Cases, explains most of the Docker use cases, such as using Docker for testing, CI/CD, and setting up a PaaS.
⦁ Chapter 6, Docker APIs and Language Bindings, dives deep into the Docker API and shows how to work with Docker using the RESTful API and SDK. The curl command that ships with Ubuntu 18.04 has a bug; so, for this chapter, we are using Ubuntu 16.04 and Docker version 17.03.
⦁ Chapter 7, Docker Performance, explains the approach one can follow to compare the performance of containers with bare metal and VMs. It also covers monitoring tools.
⦁ Chapter 8, Docker Orchestration and Hosting Platforms, provides an introduction to Docker Compose and Swarm, and then we take a look at using Kubernetes for Docker Orchestration.
⦁ Chapter 9, Docker Security, explains general security guidelines, SELinux for mandatory access controls, and other security features such as changing capabilities and sharing namespaces.
⦁ Chapter 10, Getting Help and Tips and Tricks, provides tips and tricks and resources to help you in things related to Docker administration and development.
⦁ Chapter 11, Docker on Cloud, provides an introduction to Docker for AWS and Azure, along with how to install and deploy an application.