Learning about Docker with this book
Every code listing in this book is accompanied by a full code sample on my GitHub repository at https://github.com/sixeyed/docker-on-windows. There's a branch for this edition of the book, called second-edition. The source tree is organized into a folder for each chapter, and for each chapter there's a folder for each code sample. In this chapter, I've used three samples to create Docker images, which you'll find in ch01\ch01-whale, ch01\ch01-az, and ch01\ch01-dockertls.
I prefer to follow along with code samples when I'm learning a new technology, but if you want to use working versions of the demo applications, every sample is also available as a public Docker image on Docker Hub. Wherever you see a docker container run command, the image already exists on Docker Hub, so you can use mine rather than building your own if you wish. All the images in the dockeronwindows organization, like this chapter's dockeronwindows/ch01-whale:2e, were built from the relevant Dockerfile in the GitHub repository.
My own development environment is split between Windows 10, where I use Docker Desktop, and Windows Server 2019, where I run Docker Enterprise Engine. My test environment is based on Windows Server 2019 Core, where I also run Docker Enterprise Engine. I've verified all the code samples in this book on all of these environments.
I'm using version 18.09 of Docker, which is the latest release at the time of writing. Docker has always been backward-compatible, so if you're using a version later than 18.09 with Windows 10 or Windows Server 2019, then the sample Dockerfiles and images should work in the same way.
My goal is for this to be the definitive book about Docker on Windows, so I've covered everything from a 101 on containers, through modernizing .NET apps with Docker and the security implications of containers, to CI/CD and administration in production. The book ends with a guide to moving forward with Docker in your own projects.