Skip to main content

Docker


Docker is used to run software packages called "containers". Containers are isolated from each other and bundle their own tools, libraries and configuration files; they can communicate with each other through well-defined channels 
                                                                                              --Wikipedia 

I have already written a article about the containers you can check out in here https://thangaayyanar.blogspot.com/2018/06/containers.html

This time, let's learn more about docker engine how we can use this. The important things we need to know in docker are

Docker Image:

 The container can be created with the help of Image.

The Image file consists of
  • code,
  • libraries,
  • environment variables,
  • configuration files

 It is like a blueprint, if you know about Object Oriented Programming Language - It is similar to class

containers are instance of image

you can able find ton of images in dockerhub ( just like github for open source software ) which is maintained by docker

you can able to pull the image from dockerhub using

docker pull [image_name]

docker pull [image_name:tag]

[or]

If you want custom docker image,you can able to do that using the dockerfile

find the images you have downloaded using

docker images

Docker container:

To create a container from run

docker run --name [name_for_container] -it [image_name]

-it => create a pseudo tty to interact with container

Note: 
  • Before you run a image best check the image docs on how to start the specific docker image.
  • Sometimes you need to expose port if the image contain server or other services.
  • you can run the container in background ( add -d option while starting the container )

you to start container using

docker start [container_name]

and stop using

docker stop [container_name]

To interact with docker container with

docker attach [container_name]

To check the containers created and running containers using

docker ps -a

These are the basics things that is necessary get and run docker container other than that we have

Docker compose file - where we can configure your container and how much container need to started,..

Docker swarm - group of machine running docker to form a cluster simply multi-conatiner with multi-machine

Got excited need to learn more, follow the link below:

https://docs.docker.com/get-started/



Comments

Popular posts from this blog

Demystify - Linux GUI

GUI In Linux GUI ( Graphics User Interface ) as everyone know about.  I am writing this article so that we can able to understand how to run GUI apps in containers but we need to understand how it works in linux. Why linux?   Most of the container we use are Linux based inorder run GUI in Linux we need know how it works.. Back in early days computer fill the entire room and if you want to access it you will be presented TTY (TeleType Machine) you can still see this screen if you press CTRL + ALT + F1 in Linux. ( To get back to GUI press CTRL + ALT + F7 ) Linux spin off 8 TTY when it boots ( we can configure more or less ) Graphics in linux is handled by bunch of little programs. They are Display manager Display manger which is the key component for graphics in which mainly graphics servers lie in linux the X.org is the defacto of Display manger. which has two components X Server  X Client Here little twist server talks to the client ( o...

Vim - Text Editor which last for Decade

what's Vim?     Vim is a highly configurable text editor for efficiently creating and changing any kind of text. It is included as "vi" with most UNIX systems and with Apple OS X                                                                                                            ---> From Vim.org  when i first heard it, what a command line editor which is awesome and i said to myself  NO WAY, there are tons of editor which looks good and easy learn curve such as Atom,Sublime,VSCode and bunch others What makes vim special than other editors?  Different from everything you have used before ( because it has modes - insert mode,visual mode,Command mode ) Forget the mouse ( why?...

Automatically Open DevTools when newtab open in Browser

One of cool topic which is told by my friend, He is web developer we want devtools to open whenever new tab get open so we searched the internet to automatically open devtools there are plenty but none didn't work for me So I decided to write by own using some browser addon i have Here the procedure is for MAC Tools:       [+] GreaseMonkey -> available for firefox       [+] TamperMonkey -> incase of chrome Working: I achieved this using Client-Server Model Client : Browser using the GreaseMonkey/TamperMonkey send the request to the Server Server: If any request received from client, It send the KeyStroke option+command+c ( differs for Operating system  )   so the devtools will open Program: Client Side ======== // ==UserScript== // @name Unnamed Script 977967 // @version 1 // @grant none // @require https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.0.4/socket.io.js // @include * // ==/UserScript== ...