I’ve personally only recently came across docker and it’s been around some time now, since October 2014 to be precise. When realizing the simple but incredible concept-of-working it delivers, there was an automatic must for investing time with it. Every developer in the world should know about this piece of technology and similarly how to use it.
What is Docker in simplified terms?
Docker, in a nutshell, is basically what I like to think as a development server bundle emulator. You don’t need PHP, Apache, MySQL on your computer to run some PHP files you’ve written, just the Docker software. The software has the required environment prepped and ready to utilize. And, I only mentioned PHP for the explanation here, Docker certainly isn’t confined to PHP.
What’s even more brilliant is that it works on remote hosts too. A hosted server with Docker installed is capable of running your docker files (which for this example is a PHP server), with no other needs for configuration!
This, of course, proves many benefits of use, I’ve listed a few of these of the top of my head –
- Absolutely no need for those troubling times trying to get a development server setup on your personal or remote computer.
- Ability to run many environments without having to download any additional resources.
- Incredibly quick deployment.
- Cross-compatibility is elegantly precise.
Don’t get me wrong though, these benefits certainly ain’t the only ones. This Top 10 Benefits of Docker article is just one of the many blogs documenting great things about it.
Here is an excellent ‘demystifying’ video on Docker which weighs up Vagrant against Docker first and then goes into depth on what and how Docker works. It’s around 7 minutes long but well worth the watch!
Another epic video I found on Jake Wright’s YouTube channel which quickly explains how Docker works and then straight into setting up a PHP development environment. The video aims to learn you the fundamentals in 12 minutes flat and is worth investing some time in.
For those of you who are already used to using dedicated hosts, shared hosting etc will automatically understand how powerful this technology is and its underlying benefits. Similarly, if you are yet to code within your own development environment locally, then strongly consider Docker first. It really takes out all the fluff of getting your local environment in order before you tackle some code. One to think about!