From OS Hassles to Team Harmony: How Docker Saved Our Group Project

Kesara Karannagoda
4 min readJun 17, 2023

--

Hey there, fellow IT enthusiast! If you’re part of the tech industry, chances are you’ve come across the buzzword “Docker” at some point. And let me tell you, it’s not just another fancy tech term — it’s actually a game-changer for developers all around the world!

Photo by Rubaitul Azad on Unsplash

First Let’s talk about the world before docker’s existence.

Back in the day, developers would create a system and send it to the testers to make sure everything worked perfectly. But there was a problem. The code they sent sometimes didn’t work properly on the tester’s computer because of differences in their computer setups.

It was really annoying! The developers would scratch their heads, trying to figure out why the code worked fine on their own computers but not on the tester’s. The testers had different operating systems, configurations, and software versions, and it caused issues with the code.

Why docker is the solution for this problem?

Docker is a tool which is used to automate the deployment of applications in lightweight containers so that applications can work efficiently in different environments. It’s an open-source platform that enables you to build, package, and run applications in containers.

Don’t you understand what I’ve said above? Don’t worry I’ll tell you my side of the story.

Photo by Jonas Leupe on Unsplash

Once upon a time, I had a group project with my awesome university friends. We were four undergraduate students working together on this exciting project. The only catch was that each one of us had a different operating system on our laptops. My friend had a fancy Mac Book with mac-OS, two others had Windows, and I was rocking Ubuntu.

Our project was a web application that included a front-end, a restful API service, and a MySQL database. To set up everything on our laptops, we had to go through the hassle of installing MySQL and the Apache Web server separately, but in different ways for each operating system. You can imagine the headaches we faced due to these differences in our environments.

Photo by Tim Gouw on Unsplash

But then, something magical happened! I came across Docker, and I had an idea. I suggested to my friends that we all install Docker on our laptops. They were curious but willing to give it a shot. So, we went ahead and installed Docker on each of our machines.

With Docker, we were able to containerize our front-end, back-end (the amazing Restful API service), and even the MySQL database separately. It was like putting each part of our application into its own little box, called a container.

What is a container?

Container is a software package that consists of all the dependencies required to run an application. Think of a container as a lightweight, standalone virtual environment that contains everything an application needs to run, including its code, system libraries.

Photo by Venti Views on Unsplash

And guess what? We didn’t encounter any of those pesky problems we faced before! Docker made our lives so much easier because it allowed us to run our application in the exact same way, no matter what operating system we were using. It was like having a universal translator for our project.

No more worries about compatibility issues or struggling with different installation methods. Docker provided us with a smooth and consistent experience across all our laptops.

We were able to focus on building our web application together, knowing that it would work flawlessly on any machine. Docker truly saved the day and made our group project journey a whole lot smoother.

What I’ve learned using Docker?

The Major advantage of docker is its ability to ensure consistency across different environments. By packaging an application and its dependencies into a container, you can be confident that it will run the same way on any machine, regardless of the underlying operating system or infrastructure. Docker also allows for easy scalability, as you can run multiple containers simultaneously without any conflicts.

Photo by Mia Baker on Unsplash

So, if you ever find yourself in a situation where you and your team have different operating systems, remember the magic of Docker. It can make your life so much easier, just like it did for us.

Let’s see how exactly docker helped me to solve the issue in the next article. Until then, Happy coding!

--

--

Kesara Karannagoda

Founder and CEO at Bitzquad | BSc (Hons) Information Systems | Freelance Technical Consultant