Book Image

The Docker Workshop

By : Vincent Sesto, Onur Yılmaz, Sathsara Sarathchandra, Aric Renzo, Engy Fouda
5 (1)
Book Image

The Docker Workshop

5 (1)
By: Vincent Sesto, Onur Yılmaz, Sathsara Sarathchandra, Aric Renzo, Engy Fouda

Overview of this book

No doubt Docker Containers are the future of highly-scalable software systems and have cost and runtime efficient supporting infrastructure. But learning it might look complex as it comes with many technicalities. This is where The Docker Workshop will help you. Through this workshop, you’ll quickly learn how to work with containers and Docker with the help of practical activities.? The workshop starts with Docker containers, enabling you to understand how it works. You’ll run third party Docker images and also create your own images using Dockerfiles and multi-stage Dockerfiles. Next, you’ll create environments for Docker images, and expedite your deployment and testing process with Continuous Integration. Moving ahead, you’ll tap into interesting topics and learn how to implement production-ready environments using Docker Swarm. You’ll also apply best practices to secure Docker images and to ensure that production environments are running at maximum capacity. Towards the end, you’ll gather skills to successfully move Docker from development to testing, and then into production. While doing so, you’ll learn how to troubleshoot issues, clear up resource bottlenecks and optimize the performance of services. By the end of this workshop, you’ll be able to utilize Docker containers in real-world use cases.
Table of Contents (17 chapters)
Preface

Using the latest Tag in Docker

As we've been working with our tags, we've mentioned a few times not to use the latest tag, which is provided by Docker as a default tag. As you will see shortly, using the latest tag can cause a lot of issues, especially if you're deploying images into production environments.

The first thing we need to realize is that latest is simply a tag, just as we were using ver_1 in our previous example. It definitely does not mean the latest version of our code either. It simply means the most recent build of our image, which did not include a tag.

Using the latest will also cause a lot of issues in large teams, deploying to environments multiple times a day. It also means you will have no history, which makes rolling back bad changes difficult. So, remember that every time you build or pull an image if you don't specify a tag, Docker will use the latest tag and will not do anything to ensure the image is the most up-to-date version...