- Blog Categories
- Project Management
- Agile Management
- IT Service Management
- Cloud Computing
- Business Management
- Business Intelligence
- Quality Engineer
- Cyber Security
- Career
- Big Data
- Programming
- Most Popular Blogs
- PMP Exam Schedule for 2024: Check PMP Exam Date
- Top 60+ PMP Exam Questions and Answers for 2024
- PMP Cheat Sheet and PMP Formulas To Use in 2024
- What is PMP Process? A Complete List of 49 Processes of PMP
- Top 15+ Project Management Case Studies with Examples 2024
- Top Picks by Authors
- Top 170 Project Management Research Topics
- What is Effective Communication: Definition
- How to Create a Project Plan in Excel in 2024?
- PMP Certification Exam Eligibility in 2024 [A Complete Checklist]
- PMP Certification Fees - All Aspects of PMP Certification Fee
- Most Popular Blogs
- CSM vs PSM: Which Certification to Choose in 2024?
- How Much Does Scrum Master Certification Cost in 2024?
- CSPO vs PSPO Certification: What to Choose in 2024?
- 8 Best Scrum Master Certifications to Pursue in 2024
- Safe Agilist Exam: A Complete Study Guide 2024
- Top Picks by Authors
- SAFe vs Agile: Difference Between Scaled Agile and Agile
- Top 21 Scrum Best Practices for Efficient Agile Workflow
- 30 User Story Examples and Templates to Use in 2024
- State of Agile: Things You Need to Know
- Top 24 Career Benefits of a Certifed Scrum Master
- Most Popular Blogs
- ITIL Certification Cost in 2024 [Exam Fee & Other Expenses]
- Top 17 Required Skills for System Administrator in 2024
- How Effective Is Itil Certification for a Job Switch?
- IT Service Management (ITSM) Role and Responsibilities
- Top 25 Service Based Companies in India in 2024
- Top Picks by Authors
- What is Escalation Matrix & How Does It Work? [Types, Process]
- ITIL Service Operation: Phases, Functions, Best Practices
- 10 Best Facility Management Software in 2024
- What is Service Request Management in ITIL? Example, Steps, Tips
- An Introduction To ITIL® Exam
- Most Popular Blogs
- A Complete AWS Cheat Sheet: Important Topics Covered
- Top AWS Solution Architect Projects in 2024
- 15 Best Azure Certifications 2024: Which one to Choose?
- Top 22 Cloud Computing Project Ideas in 2024 [Source Code]
- How to Become an Azure Data Engineer? 2024 Roadmap
- Top Picks by Authors
- Top 40 IoT Project Ideas and Topics in 2024 [Source Code]
- The Future of AWS: Top Trends & Predictions in 2024
- AWS Solutions Architect vs AWS Developer [Key Differences]
- Top 20 Azure Data Engineering Projects in 2024 [Source Code]
- 25 Best Cloud Computing Tools in 2024
- Most Popular Blogs
- Company Analysis Report: Examples, Templates, Components
- 400 Trending Business Management Research Topics
- Business Analysis Body of Knowledge (BABOK): Guide
- ECBA Certification: Is it Worth it?
- How to Become Business Analyst in 2024? Step-by-Step
- Top Picks by Authors
- Top 20 Business Analytics Project in 2024 [With Source Code]
- ECBA Certification Cost Across Countries
- Top 9 Free Business Requirements Document (BRD) Templates
- Business Analyst Job Description in 2024 [Key Responsibility]
- Business Analysis Framework: Elements, Process, Techniques
- Most Popular Blogs
- Best Career options after BA [2024]
- Top Career Options after BCom to Know in 2024
- Top 10 Power Bi Books of 2024 [Beginners to Experienced]
- Power BI Skills in Demand: How to Stand Out in the Job Market
- Top 15 Power BI Project Ideas
- Top Picks by Authors
- 10 Limitations of Power BI: You Must Know in 2024
- Top 45 Career Options After BBA in 2024 [With Salary]
- Top Power BI Dashboard Templates of 2024
- What is Power BI Used For - Practical Applications Of Power BI
- SSRS Vs Power BI - What are the Key Differences?
- Most Popular Blogs
- Data Collection Plan For Six Sigma: How to Create One?
- Quality Engineer Resume for 2024 [Examples + Tips]
- 20 Best Quality Management Certifications That Pay Well in 2024
- Six Sigma in Operations Management [A Brief Introduction]
- Top Picks by Authors
- Six Sigma Green Belt vs PMP: What's the Difference
- Quality Management: Definition, Importance, Components
- Adding Green Belt Certifications to Your Resume
- Six Sigma Green Belt in Healthcare: Concepts, Benefits and Examples
- Most Popular Blogs
- Latest CISSP Exam Dumps of 2024 [Free CISSP Dumps]
- CISSP vs Security+ Certifications: Which is Best in 2024?
- Best CISSP Study Guides for 2024 + CISSP Study Plan
- How to Become an Ethical Hacker in 2024?
- Top Picks by Authors
- CISSP vs Master's Degree: Which One to Choose in 2024?
- CISSP Endorsement Process: Requirements & Example
- OSCP vs CISSP | Top Cybersecurity Certifications
- How to Pass the CISSP Exam on Your 1st Attempt in 2024?
- Most Popular Blogs
- Best Career options after BA [2024]
- Top Picks by Authors
- Top Career Options & Courses After 12th Commerce in 2024
- Recommended Blogs
- 30 Best Answers for Your 'Reason for Job Change' in 2024
- Recommended Blogs
- Time Management Skills: How it Affects your Career
- Most Popular Blogs
- Top 28 Big Data Companies to Know in 2024
- Top Picks by Authors
- Top Big Data Tools You Need to Know in 2024
- Most Popular Blogs
- Web Development Using PHP And MySQL
- Top Picks by Authors
- Top 30 Software Engineering Projects in 2024 [Source Code]
- More
- Agile & PMP Practice Tests
- Agile Testing
- Agile Scrum Practice Exam
- CAPM Practice Test
- PRINCE2 Foundation Exam
- PMP Practice Exam
- Cloud Related Practice Test
- Azure Infrastructure Solutions
- AWS Solutions Architect
- AWS Developer Associate
- IT Related Pratice Test
- ITIL Practice Test
- Devops Practice Test
- TOGAF® Practice Test
- Other Practice Test
- Oracle Primavera P6 V8
- MS Project Practice Test
- Project Management & Agile
- Project Management Interview Questions
- Release Train Engineer Interview Questions
- Agile Coach Interview Questions
- Scrum Interview Questions
- IT Project Manager Interview Questions
- Cloud & Data
- Azure Databricks Interview Questions
- AWS architect Interview Questions
- Cloud Computing Interview Questions
- AWS Interview Questions
- Kubernetes Interview Questions
- Web Development
- CSS3 Free Course with Certificates
- Basics of Spring Core and MVC
- Javascript Free Course with Certificate
- React Free Course with Certificate
- Node JS Free Certification Course
- Data Science
- Python Machine Learning Course
- Python for Data Science Free Course
- NLP Free Course with Certificate
- Data Analysis Using SQL
Introduction to Docker, Docker Containers & Docker Hub
Updated on 04 November, 2020
8.82K+ views
• 7 min read
Docker is a tool that makes creating, deploying, and running applications easier with the use of containers. Now, what are containers? These can be described as something that makes it possible for developers to spruce up an application with all the parts needed for it. These could include libraries, for instance, along with other dependencies. Docker assembles all these and presents them as one package. The container gives the developer the assurance that the application will run on just about any Linux machine, no matter to what extent any of its customized settings in a particular machine could be at variance from those on the machine on which the code is written and tested.
Who is Docker for:
Docker is aimed to benefit both developers and system administrators. This makes it a part of many DevOps (developers + operations) toolchains. The main benefit that Docker carries for developers is that they can concentrate on their core job of writing the code without having to bog themselves down with which system it will run on.
How Docker is useful in the IT industry:
The most vital use of the Docker Enterprise container platform is that it offers value to a business by drastically bringing down its cost on infrastructure and maintenance. It can also do the same when it comes to migrating current. Best of all, all these can be done immediately upon installation. In this way, it saves time, as well. The following infographic illustrates how Docker brings down costs and increases productivity in an enterprise:
Docker container:
Next, let us understand what a container in a Docker is. We can think of it as being a standard unit of software that has the purpose of packaging the code and all its dependencies together.
It comes with all that an application needs to run, namely settings, code, system tools, runtime, and system libraries.
The point of making a Docker container in this fashion is to help the application run in a fast and dependable manner between one computing environment and another. A Docker container image has these characteristics:
- Lightweight
- Standalone
- Executable
In this sense, the container lies at the heart of a Docker.
Docker containers that run on Docker Engine:
Let us get down to understanding the Docker containers that power the Docker Engine.
Standardization: Docker containers were created according to the industry standard for containers. The aim of doing this is that the containers could be made portable.
Lightweight: Since containers share the machine’s OS system kernel; there is no need for an OS per application. What does this do? It increases server efficiencies and brings down the costs of the server as well as those associated with licensing.
Security: Security is assured for applications in containers. It is a fact that Docker comes with the industry-best default isolation capabilities.
Let us explain a few Docker commands from the architecture shown above:
- docker run – Used for running a command in a new container
- docker start – For starting one or more stopped containers
- docker stop – For stopping one or more running containers
- docker build – Used for building an image form in a Docker file
- docker pull – For pulling an image or a repository from a registry
- docker push – Given for pushing an image or a repository to a registry
- docker export – For exporting a container’s filesystem as a tar archive
- docker exec – To run a command in a run-time container
- docker search – For searching the Docker Hub for images
- docker volume- To create and attach to containers to store data.
- docker network- allows you to attach a container to as many networks as you like. You can also attach an already running container.
- docker attach – To attach to a running container
- docker commit – For creating a new image from a container’s changes
- docker daemon – Having listened for Docker API requests, the Docker daemon (dockerd) manages Docker objects. These include networks, volumes, containers, and images. It also communicates with other daemons when managing Docker services.
- docker Images – A read-only template, an image has instructions that are used to create a Docker container. Many times, images are based on other images and carry some degree of customization. An image-based on ubuntu can install the Apache web server, your application, and the configuration details that the application needs to run.
Understanding Docker Hub Registry
A registry service that is cloud-based; the Docker Hub Registry allows the user to do the following:
- Link to code repositories
- Build images and test them
- Stores images that are manually pushed
- Links to Docker Cloud to help deploy images to a host.
In summary, we can understand the Docker Hub Registry as a tool that offers a centralized resource for discovering a container image, managing distribution and change, facilitating collaboration between the user and team, and automating workflow throughout the development pipeline.
Ref URL.
- Create a docker hub account.
- Pull a docker image
docker pull ubuntu
- pull a docker image with old version
docker pull ubuntu:16.04
- create a custom tag to docker image
docker tag ubuntu: latest admin/ubuntu: demo
- login to your docker hub registry “sh docker login
- docker push admin/ubuntu: demo
testing
- Remove all images in docker server
docker image rm -f <Image_id>
- Pull your custom image from your docker account
docker pull admin/ubuntu:demo
Installation Docker on Amazon Web Services (AWS) cloud:
Why Amazon Web Services:
AWS is a highly preferred cloud service. It enjoys a position of primacy in the global cloud services market due to the following reasons:
- Market pioneers
- Unshakeable customer faith
- Cost-effectiveness
- Ease and affordability of building a storage system with no worry of estimating usage
- Suitability for small businesses, since it is ideal for building a business from bottom to top.
Advantages of AWS:
- Easy of usability
- Agility
- Security
- Reliability
- Services without capacity limits
- Cost-effectiveness
- Flexibility
- 24×7 support.
Steps to Install docker on Amazon Linux:
- We need Amazon web services account.
- Create AWS account and login to console. Choose Ec2 service from console.
- Click on Launch instance and choose Amazon Linux Ami Ec2 server free tier Eligible.
- Choose free tier Eligible Ec2 t2. Micro.
- Here we need configure instance details like region, subnets, vpc.
- Add storage. By default it will give us 8GB, and we can modify it after launching Ec2.
- Create security groups and check port 22 is open to allow SSH connection and we can add incoming ports in security groups.
- Review details of Ec2 instance and click on Launch.
- Create New key pair or if we have existing key pair, we can use the same; and download and click on Launch instance.
- Convert Keypair from .PEM file to. PPK using puttygen. We can Download puttygen and putty from here.
- Login ec2 instance using putty and Ec2 Public Ip address.
- Click on SSH in Right panel and click Auth and add PPK key pair for ec2 to login.
- When we login to ec2 with New key pair we will get security alert. Click on YES and login as “Ec2-user”. If we need to login as root “sudo su – “.
- Update packages for security purpose using command “sudo yum update -y”.
- Now we need to install docker on Amazon Linux. Use command “ sudo yum install docker -y”.
- To check Docker version, we can see output below:
- Start docker with “sudo service docker start” command.
- Check Docker status.
- Now we can download any docker images by using “docker pull command”.
- Check if the docker container is running with “docker ps” command.
- To Login into docker container use “docker exec -it –user root container id bash.
- Check current docker containers and stopped container with “docker ps -a” command.
- To check downloaded docker images with “docker images” command.
Conclusion:
A tool with which creating, deploying and running applications is made much easier, a Docker is a set of packages that uses containers. It is of high value to both developers and system administrators, who can look at their core work without having to worry about writing the code, which runs on any system.
Docker Enterprise is of immense value to the IT industry, as it brings down the maintenance and infrastructure costs. It can be deployed immediately and can be migrated easily.