Docker Bootcamp (AKA Learning Docker the LONG Way)

Originally published: Sept 17, 2018

NWI Logo

The best lessons are the ones that stick around after the initial failure.

The following content was originally for my DevOps Specialist Internship at Nebulaworks. All opinions reflected myself at that time and are not representative of my current views.

Coming straight out of college, the first thing most graduates would do is taking more classes during the summer. However, taking a break was the last thing on my mind when I concluded my undergraduate education at Chapman University. To me, learning never stops, especially in the dynamic field that is Computer Science. I made it a personal goal to apply myself to every job I partake in. Thus, when I was offered to have a summer IT internship, I knew I already mentally prepared for what's to come. At least that's what I thought.

During my internship, I was tasked to learn two softwares that I never heard of during my undergrad: Docker and Kubernetes. Not only that, I was also challenged into become a Certified Docker Associate AND Certified Kubernetes Associate within the span of my internship (~three months). Welp. While this may seem fairly strange for someone who is exposed to technology all the time, I accepted this major task and started to experiment with them.

First, in order to understand Kubernetes I needed to understand Docker. In order to understand Docker, I needed to familiarize myself with Shell Commands, Terminal Text Editors, and Linux Commands. Out of those three, I had the most familiarity with Shell Text Editors, and it was not as pleasant as how many Linux users see it. From this alone, I had a lot of catching up to do.

For the next two months, I dived deep into the heart of Linux Systems and Docker, learning more about the OS and the software than ever before. From the relatively easy vimtutor tutorial, the sometimes incoherent lecture videos on Linux, DevOps, and Docker, to participating in formal remote classes proctored by certified Docker trainers, I slowly made progress in becoming a Docker Associate and DevOps in general. I also went through an abundant of GitHub repositories, practicing on typical Docker scenarios like as image creation and backing up DTR. I even had the drive to install some plugins that were on my work laptop onto my personal computer so I could practice using its the tools in my free time (Did I say free time? HAHA I wish).

Fast forward to the latter end of August 2018. I still couldn't fathom that I managed to become somewhat proficient at shell scripting, Linux systems, and Docker concepts. The past 1.5 months felt like I was taking a summer course except the only professors I had was myself and Google. I was still shaky on some aspects, but I knew it's now or never to take the Docker Certification exam. Despite exam was meant to be taken by people who had 3-6 months of Docker experience, I went in with barely half of the minimum time. It was an uphill battle all the way, and the exam itself was no exception.

Thankfully (and a bit bluntly) Docker immediately notified me of my results as soon as I submitted the exam. While I will never know my actual score from the rather confusing metrics they spat at me (unless my impromptu math was correct) I passed! I couldn't believe it myself, working nonstop on three topics that lead up to Docker, and in only 1.5 months, I was able to get an official certification. Nevertheless, this isn't the end of the road in my internship. I will still be learning more and more during it, despite my accomplishment. Just as I graduated from college, the educated mindset never rests. Now, onto the Kubernetes certification!