0% found this document useful (0 votes)
16 views

Docker

Docker provides isolated environments and standardized setup of dependencies, which helps developers avoid issues when switching between projects or services with different requirements. It also allows faster and more consistent deployment between development and production environments. This improves developer productivity and reduces errors when deploying applications.

Uploaded by

ankitbansal006
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views

Docker

Docker provides isolated environments and standardized setup of dependencies, which helps developers avoid issues when switching between projects or services with different requirements. It also allows faster and more consistent deployment between development and production environments. This improves developer productivity and reduces errors when deploying applications.

Uploaded by

ankitbansal006
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

Docker is being around in industry from almost a decade now, but still I see

developers resistance towards it, the main reason I understand from my experience
is resistance to change, they are so habitual of their old development practices
that they turned blind to see the benefits the docker provides to developers. It is
true that Docker is a no silver bullet but to be honest it is not much less than
that too if you see its benefit that it provides to developers working in big
teams, cross prjects.

Time is Money
In modern software development practices, sticking to just one language for
software development is not sufficent. Say an example developing a medium size
website in php needs a whole bunch of libraries and extensions to be installed in
the system

Extract from one of the docker file, if not these have to do be done by developer
manually on system to provide all dependencies:
RUN apt-get update \
&& apt-get install -y ant \
&& apt-get install -y --reinstall base-files lsb-release lsb-base \
&& apt-get install -y nginx curl zip unzip git software-properties-common
supervisor sqlite3 wget \
&& add-apt-repository -y ppa:ondrej/php \
&& apt-get update \
&& apt-get install -y php7.2-fpm php7.2-cli php7.2-gd php7.2-mysql php-mcrypt \
php7.2-pgsql php7.2-imap php-redis php7.2-mbstring php7.2-xml php7.2-curl \
&& apt-get update \
&& wget http://packages.couchbase.com/releases/couchbase-release/couchbase-release-
1.0-4-amd64.deb \
&& dpkg -i couchbase-release-1.0-4-amd64.deb \
&& apt-get update \
&& apt-get install -y libcouchbase-dev build-essential php7.2-dev zlib1g-dev \
&& pecl install couchbase \
&& php -r "readfile('http://getcomposer.org/installer');" | php --
--install-dir=/usr/bin/ --filename=composer \
&& mkdir /run/php \
&& apt-get remove -y --purge software-properties-common \
&& apt-get -y autoremove \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \
&& echo "daemon off;" >> /etc/nginx/nginx

Not just the php libraries, one needs diff environment like node, npm for frontend
development as well, figuring out all these dependecies with proper versions is a
challange, most oftenly one face challange due to conflicts that occurs in system
due to the presence of previously installed softwares and packages. Docker helps
and solves this problem by providing developers with the isolated new virtual
environment on seperate base image and a place to save and automate the
installation of required libraries in dockerfile. One who has ever struggled with
the installation of different librarries and extensions on system can easily
understand the time it saves to setup the system to start development and run
application.
This greatly reduces the time to onboard new developer into the team and getting
him ready for the contribution which solves actual business needs.

Boon in microservices environment


As a technical lead, I often work with different microservices and had to switch
from development on one micoservices to another, and it happens sometimes that both
are totally on different set of technologies, in our case it happens to be php and
node js mostlt, and I praise docker everytime I switch between them and appreciate
how it allows me with the ease to switch to totally different environment, each one
with a whole set of different dependencies.

With a large tenure of successfull journey of development at Dyninno, we have some


services which are working on different versions of the same language like php 7
and 8, which we time to time working on upgrading it to the latest, we often need
to switch from one version of php to another, without docker this will be a really
challanging task to setup and support different versions to run applications.

Superfast Server configuration


Docker helps devops in knowing the dependencies for successfully deploying the
application on server and providing the similar environment as it was developed on
by the developer. Pre docker usage in company it was quite often noticed that
functionality that works on developer machine, breaks as stage or production
environment, consistent environment for successfully running the application
reduced the error count a lot and time to setup the server by devops, it also
reduces the issues related to hosting service providers, patches and updates by
them on host OS leads to environment issues which is greately reduced by
introduction of docker.Scalability and security is the other major challange that
docker helps in solving in the company, all system has its varying needs and
different scalability challange, docker helps in seperating the parts and we can
upgrade the configurations and provide resources based on its needs and launch more
instances of it in a shorter time frame.

You might also like