What is Docker | Why Docker is important? | Docker Tutorial for Beginners

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
Jenkins right now it is installed or not it is just a image when it is converted to container then only it will basically take a memory so operating system within operating system understood this is parent operated system this is child operating system they can communicate with each other instead of making the virtual machines right can we divide them into app based suppose I want to install app one app to an app 3. so Docker right very important thing first of all question is why it is important to learn right see if you're a manual tester when you move towards automation right what happens you need two things you need to maintain your test cases and you need a stable running environment to run your test cases promote we all need a stable environment right to run our automation that is the most important thing right how will you run your test cases so suppose these all these are my test cases this is 100 test cases I have written and my manager says that okay pramod run them nightly every night 10 pm I need to run and send this report HTML report to my qle right so where you will run you will need a cicd thing yes or no okay so multiple people are saying this promoter what we will do is we will keep our test cases suppose we have written this in Java we will keep them into a git by using the git protocol we keep them in GitHub gitlab bitbucket right any of anywhere we will basically keep it after that we will basically run by using the Jenkins yes or no Jenkins will run at a 10 pm and send a report to my qle this is how it will be done step Number One Creation Step 2 Step 3 and step four but now please tell me where this Jenkins is installed is it installed in your local machine if it is installed in local right then it doesn't then it is not an automation right you are doing manual stuff yes or no if this Jenkins what you are doing is suppose I am using GitHub it is owned by the Microsoft right so Microsoft so I know the my code is present my test cases are present on the Microsoft server after that we need a machine yes or no we need a machine where we will install Jenkins yes or no Jenkins or something which will basically execute our test cases and then this will send our report to QA lead if this part is you are doing it in your local machine then you are a poor automation tester if you are doing this we need a separate environment for this to promote it means that to run our test cases less by using the Jenkins we need a machine it can be a Windows machine or it can be a Mac machine or it can be a Linux machine most of the time you will see 80 percent of the time we will use Linux machine right Ubuntu mostly time yes generally where you will use either you will use a AWS machine or you will use from Google server or you will use for on the Azure yes or no only these three things are available mostly or fourth thing is digital ocean mostly or you will use digital lotion where you will do that or fifth one is your local machine this is a very poor choice so I am marking this as a red so we need to borrow some machine from somewhere right and we will install the Jenkins and we will execute our test case into this machine right now what is the problem docker foreign Docker is basically a platform it is basically please remember it is a platform now it is not a container if you only say it's a container right then you are not justifying a Docker Docker is a full-fledged platform it can basically help you to develop as well as ship right as well as register your applications whatever application you are working on now application basically means see Docker was created to basically for developers right but as a tester we will basically use for our application which will help us to do CI CD isn't it we need Jenkins we need a machine where we can run our test case in Java yet yes or no so we will use this Docker thing for this purpose understood this point but ideally it is created for developing your application shipping your application also right what do you mean by Docker then it means right if I give you a very simple example right Docker will provide you that okay what you can do if you have a blueprint suppose this is a blueprint to create a building this blueprint says that if you want to create a building you should have a 12 floor okay 13 bathroom and 12 open bathrooms this is a blueprint and if somebody some Builder comes in create a building this is a this is called as container it is container is the instance of the image we can basically create virtual kind of virtual kind of machine within your real machine or generally people call this as container we call this as container to understand Docker very well right you need to understand this concept okay so agenda is what is Docker V concept of Docker installation Docker command Docker images compose Jenkins running and selenium okay this is not solenoid this is selenium grid now just hear me out with this Docker is a platform for developing shipping and running application in a containers now what do you mean by containers right promote it means in our operating system when we install Docker there are containers which are created can we see those containers if you need to clearly understand this concept right let me show you suppose this is your operating system okay if you install a virtual machine right what will happen is smaller part of your operating system this is your parent operating system a child operating system you can install so you can install Windows 7 into this and you can use it you can use it it will be both will be share the resources understood the point it is like a Inception how many of you have seen the picture Inception Dream Within dream right like this only so operating system within operating system understood this is parent operated system this is child operating system they can communicate with each other but the problem with virtual machines is that they share a lot of memory so if you look look into this diagram right here if you see we have suppose we have 16 GB of memory so suppose I have virtual virtual machine one Virtual Machine 2 virtual machine 3. instead of making the virtual machines right can we divide them into app based suppose I want to install app one app to an app 3. what we are doing in case of Docker is suppose guys I have a three applications I have application number one Jenkins I need to install application number two I need to install uh selenium grid right and application number three suppose I need to install some database SQL so what I will do I will install three virtual machines yes virtual machine number one virtual machine number two virtual machine number three right but that is not a correct way previous sleeve and Docker was not introduced right we used to use Virtual machines only so this virtual machine will also have their own Windows 7. they are like replica of this understood but they will use the resources of the operating system yes or no so proper resource management was not there so if it means we cannot install multiple virtual machines to make it better what exactly they have done is they have introduced the concept of Docker Docker is helping you to develop shipping and running application right containers are lightweight in nature portable and self-sufficient environment that includes everything that your application need to run which means what is happening in case of Docker is if you see this diagram same concept will be there it is similar to Virtual machines only this is your parent operating system we will create a smaller smaller kind of machine all these machines will be taken care by the docker Docker server will basically take care of your memory and they will be like minimum version of your operating system or something for example we will use a lightweight Ubuntu way where we will install Jenkins isn't it yes or no only application one which is Jenkins will run application number two where we will run selenium grid an application number three where we will have our test case running understood isn't it Docker amazing Docker will do everything with for you it will basically help you to memory manage your memory right it will provide you API to start stop it will help you to save the state of your container you can restart anywhere and what you can do is if you can basically create a application by step by step you can stay away State and share with your friend isn't it Docker amazing tell me in the chat Docker has a two concepts which is images and container images are like a blueprints okay so generally what will happen is you will find that okay Docker have images which are basically what we call registered right and you can create a container containers are the running instances of the docker images but what do you mean by this promote for example I have a Docker image of 1GB when you run it right each can take 1GB 1GB RAM let's see some real example what is going on how to do this so first of all please install dot go to Docker install here you will find Docker link right make sure you install this I am using Docker desktop for Mac you can use the docker desktop for Windows it basically run on the X systems if you are using on Linux you can do that after you install right it is a similar process open the docker application right so how Docker works is like this you have a client so which client we are using we will use either we will you can use a remote API to communicate with Docker or you can use a client client basically means the shell that we are going to use shell basically means we are going to use a command line command line tool to interact with or you can use a Docker client also so if you see there is a Docker which is running right how many of you can see that this icon a whale icon can you see that no VPN is deleted right so you will see a green icon which is token is running like this if you click on this dashboard right you will see an option like this where initially you you won't see any images here if you don't see this Docker herb right click on dashboard you will see an option to images here you will see couple of options images are blueprints of the application that you want to run on your system for example if I install Jenkins Jenkins right now it is installed or not it is just a image when it is converted to container then only it will basically take a memory remote what do you mean by this is what exactly Docker will do is initially every for example suppose we want to run Jenkins yes or no Jenkins is a Java application which will help you to execute your selenium test case it at a particular time understood now question is pramod then why do we need to why need to execute this hey you you have certain test cases right you want to run at 10 pm are you going to run on uh your local machine you will run on Jenkins Jenkins will be installed in some machine you will borrow this machine from where AWS Google server Google gcp or Azure in this one we will install Docker which will install Jenkins for you understood and second application suppose we need to run a selenium selenium grid now question is why do we need selenium grid to run your application to run your test cases yes or no Jenkins will run my application at a particular time by using the selenium radius or no this is the architecture this is your test cases you have created in your IntelliJ right this is your test cases you have created in Java or python however you have created it IntelliJ or python this will go to your GitHub right after that they will go to that will they will be run on a Jenkins isn't it yes or no you need a infrastructure where you will run this yes or no Jenkins plus selenium grid this infrastructure we are installing into a Docker I understood this point right now I am showing you we will IM is going to install into my machine only but in future we will install in our AWS machine isn't it so good thing is that we already have a images available directly images available for example if I need to install Jenkins Jenkins is basically present here if you want to install anything for example here it is telling you that Docker is allocated with the 8GB of the memory that 3.2.9 is basically used by this memory as of now okay but let's understand by using this Docker we have installed yes or no Docker desktop we will come again how do you verify you do have installed Docker so first of all you will see you can check if you have Docker installed or not and Docker is running on Docker version the moment you do this you will see Docker version which Docker version we have installed fair enough now Docker images first command is Docker images which images we have yet first time you will run it you you won't see anything for you it will be empty for you I have already downloaded some of the images images are nothing but a blueprint but they are not running they have just taken a space where we have told that this is this is a Jenkins all the material all the files which are required to run Jenkins everyone everything is available but they have not taken the memory understood the point it means when you run them when you run them they will become a container and container is basically running and taking your actual Ram right now they are taking Ram or ROM which one it is taking tell me that ROM only yes they are just taking read only memory yes or no they are just to they are just using my hard disk they are not basically running at the time isn't it then what is the what is the process to run then right so process is very simple you need to do three steps build pull and run building part is already done by the docker guys yes or no so in the hub.docker.com you will find hundreds of the applications which you work right all of them are basically created for you right right suppose I want to run Jenkins what you will do you will search a image of Jenkins here by using the pull here they have mentioned building build are we building no we are not building we will directly pull we will go directly with the pull step as of now and we will run so build part is already done by the docker registry most of most of the cases thank you
Info
Channel: The Testing Academy
Views: 2,490
Rating: undefined out of 5
Keywords: docker tutorial, docker, docker for beginners, docker tutorial for beginners, what is docker, learn docker, how docker works, why docker, getting started with docker, install docker, docker pull, docker run, docker build, dockerfile tutorial, docker container, what is docker container, docker container tutorial, docker course, docker full course, docker full tutorial, docker complete tutorial, docker tutorial complete, the testing academy, the testinbg academy docker
Id: jgxIVKEDf28
Channel Id: undefined
Length: 12min 30sec (750 seconds)
Published: Fri Oct 06 2023
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.