The Cur­rent Pop­u­lar­ity and the Fu­ture of Docker

Docker con­tain­ers en­able devel­op­ers and op­er­a­tors to build and ship an ap­pli­ca­tion any­where. The au­thor dis­cusses the pop­u­lar­ity of Docker con­tainer tech­nol­ogy, and its fu­ture rel­e­vance and scope.

OpenSource For You - - Contents - By: Swap­neel Me­hta The au­thor has worked with Mi­crosoft Re­search, CERN and star­tups in AI and Cy­ber­se­cu­rity. An open-source en­thu­si­ast, he en­joys spend­ing his time or­gan­is­ing soft­ware de­vel­op­ment work­shops for school and col­lege stu­dents. You can con­nect

Vir­tu­al­i­sa­tion refers to the cre­ation of a ‘vir­tual’ tech­nol­ogy—an ab­strac­tion built to sup­port a di­verse set of ap­pli­ca­tions and sys­tems us­ing the same base set of re­sources. Vir­tual ma­chines (VMs) are the im­ple­men­ta­tion of vir­tu­al­i­sa­tion for an en­tire ma­chine. They em­u­late the hard­ware, net­work­ing and stor­age, pro­vid­ing an iso­lated sys­tem for the end user. A VM pro­vides the com­plete set of func­tion­al­ity an op­er­at­ing sys­tem would have pro­vided. Mul­ti­ple VMs can be run on a sin­gle sys­tem, thus op­ti­mis­ing the us­age of sys­tem re­sources and re­duc­ing the need for sep­a­rate hard­ware for each sys­tem. Spe­cialised soft­ware, known as a hy­per­vi­sor, is of­ten used on servers to man­age the dif­fer­ent VMs. If you have surfed the In­ter­net, you have prob­a­bly been ex­posed to a vir­tual ma­chine with­out re­al­is­ing it. That is the beauty of this tech­nol­ogy!

The tech­nol­ogy has, in fact, de­vel­oped over a span of decades, start­ing with IBM’s first com­mer­cial main­frame that sup­ported vir­tu­al­i­sa­tion, which evolved to ad­dress the de­mand by Bell Labs and the Mas­sachusetts In­sti­tute of Tech­nol­ogy in the 1960s.


You’d think con­tain­ers were a mod­ern up­date to vir­tual ma­chines, but the fact is that they date back to the 1970s, to the ‘ch­root’ of UNIX ma­chines (a com­mand that de­fined a new root di­rec­tory for the sys­tem), in­tro­duc­ing the con­cept of iso­lat­ing pro­cesses from each other with­out the need for hard­ware-level vir­tu­al­i­sa­tion. The Linux con­tainer was one of the first com­pre­hen­sive im­ple­men­ta­tions of the con­tainer ecosys­tem. A se­ries of up­dates and sev­eral

decades later, we have con­tain­ers that are a speed­ier, more ef­fi­cient con­struct, which use op­er­at­ing sys­tem­level vir­tu­al­i­sa­tion in­stead. Con­tain­ers of­fer a num­ber of ad­van­tages over vir­tual ma­chines, an im­por­tant one be­ing that they are light­weight and eas­ier to de­ploy at scale in cloud-based in­fra­struc­ture.


Docker is soft­ware that of­fers a means to de­velop and main­tain con­tain­ers. It pri­mar­ily re­lies on the LXC in­ter­face and uses the con­cepts of groups and names­paces in Linux; how­ever, the team has de­vel­oped a pro­gram­ming in­ter­face called lib­con­tainer, which is be­ing used to de­velop cur­rent it­er­a­tions.

The most im­por­tant rea­son be­hind the high adop­tion rate of Docker is that it is light­weight. Docker im­ages are much lighter to de­ploy than hy­per­vi­sor-based sys­tems like vir­tual ma­chines. This also in­creases the den­sity of con­tain­ers (com­pared to VMs) that can be de­ployed on a host. And this means that the size of a con­tainer is a few megabytes ver­sus the gi­ga­bytes of a VM, and the boot time is in sec­onds con­trasted with the min­utes it takes for even the faster VMs to launch.

Docker Hub has gone a step fur­ther by pro­vid­ing a com­plete ecosys­tem for shar­ing and dis­tribut­ing im­ages as well as main­tain­ing ex­ist­ing de­ploy­ments.

En­ter­prise us­age

The ap­pli­ca­tion life cy­cle is a labour-in­ten­sive cir­cle of de­vel­op­ment, in­te­gra­tion and test­ing. Hav­ing a con­tainer­ised en­vi­ron­ment greatly sim­pli­fies the de­pen­dency man­age­ment, scal­a­bil­ity and de­ploy­ment of ap­pli­ca­tions, since the de­ploy­ment en­vi­ron­ment can be made com­pletely iden­ti­cal across de­vel­op­ment and pro­duc­tion servers. This is why Docker’s sim­pli­fi­ca­tion of com­plex de­vel­op­ment en­vi­ron­ments makes it a lead­ing prod­uct across the in­dus­try.

Re­source util­i­sa­tion in Docker con­tain­ers is max­imised and iso­la­tion leads to bet­ter and more pre­dictable sys­tem per­for­mance. More­over, se­cu­rity is en­hanced; even if a user is able to com­pro­mise the sys­tem and gain su­pe­ruser priv­i­leges, this user is iso­lated from the rest of the sys­tem. Porta­bil­ity to many op­er­at­ing sys­tems and the ver­sion con­trol fea­ture make the tech­nol­ogy an at­trac­tive pack­age for wide­spread adop­tion across the in­dus­try.

Rapid adop­tion

Docker has fast be­come the in­dus­trial stan­dard for con­tainer­i­sa­tion, with a 40 per cent in­crease in adop­tion across all hosts, claimed a study pub­lished by the lead­ing met­rics and mon­i­tor­ing provider, Data­dog. The study fur­ther claimed that there is a lin­ear in­crease in the con­tain­ers de­ployed by users, with the num­bers nearly quin­tu­pling in the first 10 months of be­ing in­tro­duced to con­tain­ers. The ma­jor trend ob­served has been the de­ploy­ment of sev­eral con­tain­ers si­mul­ta­ne­ously on a sin­gle host.

In a sim­i­lar study, lead­ing an­a­lyt­ics provider Sys­dig claims to have ob­served as many as 95 con­tain­ers run­ning on a host. A ma­jor­ity of the hosts used Ku­ber­netes as an or­ches­tra­tor to man­age these con­tain­ers, while main­tain­ing a reg­istry of con­tain­ers to en­able easy shar­ing be­tween users and ser­vices.

The fu­ture An anal­y­sis of cur­rent trends

The Dock­erCon 2016 key­note speech by Docker’s CEO

Ben Golub pro­vided many in­sights into the cur­rent level adop­tion of this tech­nol­ogy:

ƒ Dock­erised ap­pli­ca­tions have grown about 3100 per cent over the past two years to about 460,000 in num­ber.

ƒ Over 4 bil­lion con­tain­ers have been shared among the de­vel­oper com­mu­nity. An­a­lysts are tout­ing 8 bil­lion as the num­ber for 2017.

ƒ There are nearly 125,000 Docker Meetup mem­bers world­wide, which is nearly half of the pop­u­la­tion of Ice­land.

Docker has spurred the de­vel­op­ment of a num­ber of projects in­clud­ing CoreOS and Red Hat’s Project Atomic, which are de­signed to be min­i­mal­ist en­vi­ron­ments for run­ning con­tain­ers. The top 10 tech­nolo­gies run­ning in Docker en­vi­ron­ments, as listed by Data­dog, are shown in Fig­ure 7.


What be­gan with 1146 lines of code has to­day turned into a bil­lion-dol­lar prod­uct. Docker has grown to a stage where a ma­jor­ity of lead­ing tech firms have been mo­ti­vated into re­leas­ing ad­di­tional sup­port for de­ploy­ing con­tain­ers within their prod­ucts. Ex­am­ples in­clude Ama­zon in­te­grat­ing Docker into the Elas­tic Beanstalk sys­tem, Google in­tro­duc­ing Docker-en­abled ‘man­aged vir­tual ma­chines’, and an­nounce­ments from IBM and Mi­crosoft with re­gard to Ku­ber­netes sup­port for mul­ti­con­tainer en­vi­ron­ments. Docker has al­ready be­come a part of ma­jor Linux dis­tri­bu­tions such as Ubuntu, Cen­tOS and Red Hat En­ter­prise Linux (RHEL), although the pack­aged ver­sions of­ten fail to keep up with the lat­est re­leases.

The Docker team has clearly laid out its goals of de­vel­op­ing the core ca­pa­bil­i­ties, cross-ser­vice man­age­ment and mes­sag­ing. It is likely that, in the fu­ture, there will be more fo­cus on build­ing and de­ploy­ing rather than the level of vir­tu­al­i­sa­tion, which is when the fine line be­tween VMs and con­tain­ers be­comes fuzzy.

In any case, the fact that Docker has breached the bil­lion-dol­lar eval­u­a­tion mark is an in­di­ca­tion of the un­der­ly­ing po­ten­tial of this tech­nol­ogy. Docker is clearly here to stay!

Fig­ure 1: Tech­no­log­i­cal overview of a vir­tual ma­chine

Fig­ure 4: The Docker con­tainer

Fig­ure 5: Com­par­ing VMs with con­tain­ers

Fig­ure 2: Heavy­weight and non-por­ta­ble

Fig­ure 3: Light­weight and por­ta­ble

Fig­ure 6: Docker adop­tion trends as re­ported by Data­dog

Fig­ure 7: Top tech­nolo­gies run­ning on Docker

Newspapers in English

Newspapers from India

© PressReader. All rights reserved.