Docker is much more than a single tool. Learn where Docker came from, how they have contributed to the community, and what their product line looks like.
- [Instructor] Now you may have heard of Docker containers before, but there's many different facets to what Docker is and what Docker does. So first, let's answer the question, who exactly is Docker? Well, if we rewind a little bit, back to March 2013, that's when Solomon Hykes, the founder of Docker, introduced Docker at a PyCon tech talk. In June 2014, about a year later, Docker Engine 1.0, made general availability at the first Docker Conference, DockerCon1.
In April 2018, four years later, Docker Enterprise Edition 2.0 was released. If we fast forward to today, around September 2018, there are over 50 billion containers, downloaded to this point. There's over 500 commercial customers using Docker and over two million Dockerized applications out in the Docker hub. Unlike many other commercial software companies, Docker has chosen to make their creations, open-source software.
Docker for Windows, that we'll be using in this course, is built on top of many of these open-source projects. They include BuildKit, Compose, containerd or the container daemon and runC, Datakit, the Docker command line interface, yes it's open-source, Docker Distribution, HyperKit, InfraKit, Libnetwork, the Moby Project, Notary and SwarmKit. I'm not going to go into the details on what every one of these does, but later when we look at Docker for Windows and we go into the About page, you'll see that Docker for Windows and specifically the community edition of Docker are built on theses open-source projects.
But what does Docker do to make money? They are, of course, a for-profit company, so they must have some commercial solutions. Well, what they've done, is to take their open-source creations and build on top of them to make enterprise-grade solutions, packaging those up into a Docker product called Docker Enterprise or Docker EE. Docker Enterprise is a licensed and fully supported Docker edition with the most advanced features available today. It runs on Windows or Linux and will be using the Windows edition of Docker EE later in this course.
Now to make development and testing of containers easy on your local desktop or laptop computer, they offer Docker Community Edition, known as Docker CE with some graphical wrappers on top of it. And that's what they call Docker Desktop. Docker CE or Community Edition is completely free, as are Docker Desktop for Windows and Mac, which include the graphical wrappers that you'll see, throughout the course.
And then there's the Docker Engine. The Docker Engine is what powers Docker Community Edition and Docker Enterprise Edition. Docker Engine is made up of, a number of those different open-source projects, distribution, orchestration, volumes, the containerd daemon, Docker BuildKit, networking and then you can extend Docker Engine with third-party plugins. Management of containers is done through the Docker CLI or the Docker Command Line Interface as well as the Docker API.
And finally, there's the Docker Hub. You can think of the Docker Hub as a container content marketplace. Kind of like a app store, if you will, where developers can upload their containers, they can keep them private or they can share them with other Docker users around the world. They can even offer their containerized applications for sale. So just like the App Store on your iPhone for example, the Docker Hub is an app store for Docker containers.
As you can see, there's many different facets to what Docker is. They're a commercial software company, an open-source contributor and the manager of the Docker Hub for sharing containers around the world. Now let's jump into Docker for Windows.
- Comparing containers, virtual machines, and Docker images
- Installing and configuring Docker for Windows
- Using Kubernetes for container orchestration
- Deploying containers
- Configuring container storage and networking
- Installing Docker on Windows Server
- Enabling Hyper-V containers