chapter one

1 Before You Begin

 

Docker is a platform for running applications in lightweight units called containers. Containers have taken hold in software everywhere, from serverless functions in the cloud to strategic planning in the enterprise. Docker is becoming a core competency for operators and developers across the industry – in the latest Stack Overflow survey, Docker polled as people’s number 1 "most wanted" technology.

And Docker is a simple technology to learn. You can pick up this book as a complete beginner and you’ll be running containers in Chapter 2 and packaging applications to run in Docker in Chapter 3. Each chapter focuses on practical tasks, with examples and labs that work on any machine that runs Docker – Windows, Mac and Linux users are all welcome here.

The journey you’ll follow in this book has been honed from the many years I’ve been teaching Docker. Every chapter is hands-on – except this one. It’s important to understand just how containers are being used in the real world, and the type of problems they solve before you start learning Docker, and that’s what I’ll cover here. This chapter also describes how I'll be teaching Docker, so you can figure out if this is the right book for you.

1.1   Why containers will take over the world

1.1.1   Migrating apps to the cloud

1.1.2   Modernizing legacy apps

1.1.3   Building New Cloud Native Apps

1.1.4   Technical Innovation – Serverless And More

1.1.5   Digital transformation with DevOps

1.2   Is this book for you?

1.3   How to use this book

1.3.1   Your learning journey

1.3.2   Try-it-nows

1.3.3   Hands-on labs

1.3.4   Additional resources

1.4   Creating your lab environment

1.4.1   Install Docker

1.4.2   Verify your Docker setup

1.4.3   Download the source code for the book

1.5   Being immediately effective