I was watching #MSBuild2017, looking over the balcony, up to the cloud, a voice whisper in my head, Oh man, you are far behind. What a moment! So many new things, I decided to pick Docker as a starting point. Honestly, I had no clue where to start. However, I did know that I had to start somewhere. A wise man said start small. Docker has just that, a hello world application.
Whenever I want to learn something, I head over to Pluralsight. Here we go. Give me Docker
I decided to take the Getting Started with Docker, then later Docker Deep Dive (still enjoying this course). They are awesome. The author, Nigel Poulton, has a good sense of humor.
Docker on Windows
I have been using Windows since I first met a computer. It is fairly simple to run and try out docker on Windows. Head over to Docker on Windows, download and follow the instruction.
After installation completed, fire up PowerShell, your very first command is docker version.
Have not used Command Line Interface for years, that output gave me a strong feeling. I uttered “wow it is cool“.
You cannot imagine my feeling when I ran this command
From that moment, I know that I can do many things with the abilities Docker gives.
Docker on Linux
Here is another fact. I do not know Linux. I have not used any Linux system. Years ago, it was hard to setup a Linux lab. What is now?
With the power of Hyper-V, I can have as many machines as I wish. I decided to download and try with Ubuntu server (The course suggested it as well).
Installing Ubuntu on Hyper-V is simple. Download Ubuntu Server here. Hello Ubuntu.
Let try docker
Such an amazing moment 🙂 They are exactly the same in both versions.
Sound a trivial task. However, there are many things that I gained during the weekend.
- It triggers my learn process. I feel energized again after years of writing code.
- It opens opportunities. The more I know, the better I am. The better I am, the more opportunities I see.
What I showed here is the end result. Just like anything else in the world, the devil is at the detail. When you actually get your hands dirty, you will meet the roadblocks. Solving them gives me some Linux pieces.
Some Linux (Ubuntu Server) Command Line I learned
sudo su: Run as administrator (mapped to Windows environment).
ifconfig: Same as ipconfig in Windows.
ip addr show: Display the IP addresses with other information
route -n: Display kernel routing table.
apt-get install [name]: Install a package. For example: apt-get install docker.io will install docker on your Ubuntu
apt-get update: Install all updates.
service [name] status: View status of a service [name]
Not a bad result for my weekend. Not mention that I, now, love the Command Line approach.
So far so good. It is enough for me to move on. My next challenge is how to take advantages of them. It would be fun.