Hi, and welcome to CloudAcademy.com's video series on Docker the development oriented virtualization service. In this video, we'll introduce the concept of Docker, what it's really, really good at and where it comes from.

Docker is an implementation of the LXC platform. LXC stands for Linux Container. LXC allows you to create extraordinarily lightweight virtual operating system environments.

While sharing the base kernel resources of a Linux operating system, you can very quickly and very efficiently start up a Linux distribution and use it, if you like, as a sandbox because you can open or close the networking ports exactly the way you'd like. You can create and delete instances that basically on demand, even as part of an automated process. We'll spend some more talking about LXC in a later video.

But Docker, which of course is the subject of this course, is a very specialized LXC implementation. It's made primarily to streamline the development process. That is developers, QA people, sys admins all each on their own whatever platform they happen to be running, whether it's Unix, or Linux. or FreeBSD or even Windows, wherever in the world they happen to be, whether it's in the same building as the other units of their business, or whether they're across the world. They can all use the latest iterations of an app or a software that's being developed confident that they're working in an identical environment.

That is they can have a place to fire up their app confident that all the dependencies and network settings and the environment is just the way it was when the developer created it, and the QA people passed it and the sys admins administered it. That's because Docker allows for full open and easy access to any version that you create. You push your Docker version to a get repo and anyone else can pull it down and fire it up. Of course, besides for development purposes all kinds of other implementations of Docker are possible.

With open source software, you're really limited only by your imagination.