Articles IT and Development

Airtract IHSAN NAUFAL ARDANTO Tagline Not Available

Docker Orchestration 27 November, 2020   

This article is written for individual review of PPL CS UI 2020


In this instance I will talk about Docker.

What is Docker?

Docker is a tool designed to create, deploy and run applications easier by using containers.


What is Container?

Containers is a tool to allow developer(s) to package up a program with all of the parts it needs, such as libraries and other dependencies.


Why the needs for this tool?

By packaging it in one container, developer can easily run the application on any other machine regardless of any customized settings differed from the machine used for writing the code. No more searching what missing dependencies needed for the application.


Docker sounds similar to virtual machine, but it differs where the host kernel is used instead of hypervisor used by VM. Dockers abstracting the OS, unlike VM where instead it abstracts the hardware. Consequently, Dockers need much less space size than Virtual Machines. It also differents from Virtual Environments where developers are still in host OS, with Docker, developers can run it on Ubuntu, Debian, Mint etc.


Advantage

There is certains benefits developers get when using docker :

  1. Consistency, the program always runs using same environment no matter which server or laptop they are running on. This means less time spent setting up environments and eliminate "it works on my machine" problem
  2. Simplicity, Developers can put docker, code and deploy it without any problems. The requirements of host's infrastructure are no longer needed. The application can be run without disturbance from the host's infrastructure
  3. Faster Deployment, Because it is much smaller than VM and does not boot an OS, Deployment of application can be reduced into seconds.


Docker as a service is consisted of three components :

  • Software: The Docker daemon, called dockerd, is a process which manages Docker containers and handles container objects.
  • Objects: Various entities used to assemble an application in Docker such as Docker container, which is a standardized & encapsulated environment where applications runs, Docker image, read-only template used to build containers, and Docker service which allows containers to be scaled across multiple docker daemons.
  • Registries: a repository for Docker images. Docker software connect to registries to pull images for use or push images that which have been built.

How to build it?

To setup Docker, many tutorial is provided online, including from it's developer. You can also search other tutorial, for example this one


For this PPL project, unfortunately I don't use Docker. There are many reasons, such as I don't make this project from scratch, I'm inheriting it to develop additional features and my predecessors didn't seem to use Docker. I'm not confident in building Docker image for projects builded by others.

Also, I'm working alone in developing this projects and considering my mobility halted by Covid, Developing Dockers for use in other laptops is not my current priority. Maybe when I have time in the future I would build it. For now I'm still satisfied using Virtual Enviroments.

Docker PPL

Related Articles

Types of IT Help Desk Software: How to Choose the Right One The IT Priority Matrix: What You Need to Know About It Agile vs Scrum- Understanding The Differences between Agile and Scrum Why Demand Planning Software can be a Game Changer for your Business Let’s know Java from its History

IT and Development Courses

Airtract FLASH SALE

Professional Program on SAP for Business Analytics...

S M Nazmuz Sakib

0 (0) New Course

The SAP Business Analytics team, for its part, breaks down its SAP BusinessObjects product suite into six categories. (At SAP, business intelligence falls under the business analytics category. Got...

9 hrs 3.14 mins 0 Students Enrolled 11 Lectures

$19

81.00 % off $100

$19

Buy Now
Airtract FLASH SALE

Learn C# Coding Intermediate: C# Classes, Methods ...

hari systems

0 (0) New Course

C# is a beautiful cross-platform language that can be used to build a variety of applications. With C# language, you can build mobile apps (for Windows, Android and iOS), games, websites, and deskt...

5 hrs 11.50 mins 0 Students Enrolled 60 Lectures

$19

80.81 % off $99

$19

Buy Now
Airtract FLASH SALE

Learn C# Coding Basics for Beginners: C# Fundament...

hari systems

0 (0) New Course

C# is a beautiful cross-platform language that can be used to build a variety of applications. With C# language, you can build mobile apps (for Windows, Android and iOS), games, websites, and deskt...

6 hrs 37.28 mins 0 Students Enrolled 84 Lectures

$19

84.17 % off $120

$19

Buy Now
Airtract FLASH SALE

Full-Stack Web Development with React and MongoDB

Chandan Kumar

0 (0) New Course

Learn all in one course: React JS with BootStrap, MongoDB, NodeJS, ExpressJS, Swagger, OpenAPI

4 hrs 37.57 mins 0 Students Enrolled 46 Lectures

$19

93.67 % off $300

$19

Buy Now
View All
Item added successfully. Go to cart for checkout.
Accept Reject