Docker for Developers
Docker for Developers
Learn how to deploy and test Linux-based Docker containers with the help of real-world use cases
Understand how to make a deployment workflow run smoothly with Docker containers
Learn Docker and DevOps concepts such as continuous integration and continuous deployment (CI/CD)
Gain insights into using various Docker tools and libraries
Docker is the de facto standard for containerizing apps, and with an increasing number of software projects migrating to containers, it is crucial for engineers and DevOps teams to understand how to build, deploy, and secure Docker environments effectively. Docker for Developers will help you understand Docker containers from scratch while taking you through best practices and showing you how to address security concerns.
Starting with an introduction to Docker, you'll learn how to use containers and VirtualBox for development. You'll explore how containers work and develop projects within them after you've explored different ways to deploy and run containers. The book will also show you how to use Docker containers in production in both single-host set-ups and in clusters and deploy them using Jenkins, Kubernetes, and Spinnaker. As you advance, you'll get to grips with monitoring, securing, and scaling Docker using tools such as Prometheus and Grafana. Later, you'll be able to deploy Docker containers to a variety of environments, including the cloud-native Amazon Elastic Kubernetes Service (Amazon EKS), before finally delving into Docker security concepts and best practices.
By the end of the Docker book, you'll be able to not only work in a container-driven environment confidently but also use Docker for both new and existing projects.
What you will learn
Get up to speed with creating containers and understand how they work
Package and deploy your containers to a variety of platforms
Work with containers in the cloud and on the Kubernetes platform
Deploy and then monitor the health and logs of running containers
Explore best practices for working with containers from a security perspective
Become familiar with scanning containers and using third-party security tools and libraries
Who this book is for
If you're a software engineer new to containerization or a DevOps engineer responsible for deploying Docker containers in the cloud and building DevOps pipelines for container-based projects, you'll find this book useful. This Docker containers book is also a handy reference guide for anyone working with a Docker-based DevOps ecosystem or interested in understanding the security implications and best practices for working in container-driven environments.
Introduction to Docker
Using VirtualBox and Docker Containers for Development
Sharing Containers Using Docker Hub
Composing Systems Using Containers
Alternatives for Deploying and Running Containers in Production
Deploying Applications with Docker Compose
Continuous Deployment with Jenkins
Deploying Docker Apps to Kubernetes
Cloud-Native Continuous Deployment Using Spinnaker
Monitoring Docker Using Prometheus, Grafana, and Jaeger
Scaling and Load Testing Docker Applications
Introduction to Container Security
Docker Security Fundamentals and Best Practices
Advanced Docker Security – Secrets, Secret Commands, Tagging, and Labels
Scanning, Monitoring, and Using Third-Party Tools
Conclusion – End of the Road, but not the Journey
Richard Bullington-McGuire is a software architect and DevOps practitioner with more than 28 years of professional experience in information technology. He has operated internet services continuously since 1995 when he established The Obscure Organization. He has used Docker to build, deploy, and run applications in production, including operating the Freezing Saddles winter cycling event since 2018. Richard is a member of the IEEE and the ACM. He holds 6 AWS certifications, including all of the Foundational, Associate, and Professional level certifications. He works at Modus Create, Inc. as director of engineering.
Andrew K. Dennis is a full stack and cybersecurity architect with over 17 years' experience who currently works for Modus Create in Reston, VA. He holds two undergraduate degrees in software engineering and creative computing and a master's degree in information security. Andy has worked in the US, Canada, and the UK in software engineering, e-learning, data science, and cybersecurity across his career, and has written four books on IoT, the Raspberry Pi, and supercomputing. His interests range from the application of pataphysics in computing to security threat modeling. Andy lives in New England and is an organizer of Security BSides CT.
Michael Schwartz is a full stack software engineer, architect, and embedded engineer for Modus Create, with over 45 years' experience as a professional. He founded one of the first public ISPs in the SF Bay Area, Best Internet Communications, and an early internet advertising agency, MediaPlex. He was one of the early developers of video games, including the upright coin-operated machines and consoles. His most recent project is RoboDomo, a home automation system built around Node.js, Docker containers, MQTT, and React.js. Originally from Chicago, IL, Mike resides in the Palm Springs area of California.