Docker is a software platform for building applications based on containers — small and lightweight execution environments that make shared use of the operating system kernel but otherwise run in isolation from one another. Containers are isolated from one another and bundle their own software, libraries and configuration files; they can communicate with each other through well-defined channels. While containers as a concept have been around for some time, Docker, an open source project launched in 2013, helped popularize the technology, and has helped drive the trend towards containerization and micro-services in software development that has come to be known as cloud-native development.

Docker

What is Docker?

Docker is an open source project that makes it easy to create containers and container-based apps. Originally built for Linux, Docker now runs on Windows and MacOS as well. To understand how Docker works, let’s take a look at some of the components you would use to create Docker-containerized applications.

Developing with Docker

Developing apps today requires so much more than writing code. Multiple languages, frameworks, architectures, and discontinuous interfaces between tools for each life cycle stage creates enormous complexity. Docker simplifies and accelerates your workflow, while giving developers the freedom to innovate with their choice of tools, application stacks, and deployment environments for each project.

Containers were just the Beginning

In 2013, Docker introduced what would become the industry standard for containers. Containers are a standardized unit of software that allows developers to isolate their app from its environment, solving the “it works on my machine” headache. For millions of developers today, Docker is the de facto standard to build and share containerized apps — from desktop, to the cloud. We are building on our unique connected experience from code to cloud for developers and developer teams.

Features of Docker

Docker’s friendly, CLI-based workflow makes building, sharing, and running containerized applications accessible to developers of all skill levels.

Install from a single package to get up and running in minutes. Code and test locally while ensuring consistency between development and production.

Use Certified and community-provided images in your project. Push to a cloud-based application registry and collaborate with team members.

Built for Developers, by Developers

At Docker, we work to make the developers’ lives easier because we’re developers too. From building Docker tools that improve dev workflows, to creating industry standards for containerizing apps. From contributing to open source projects and to being elected to the CNCF Technical Oversight Committee, the people building Docker tech are one of the things that sets us apart from the rest.

Docker supported OS:

Mac, Windows and Linux.

Install Docker Desktop on Windows

  1. Double-click Docker Desktop Installer.exe to run the installer.

If you haven’t already downloaded the installer (Docker Desktop Installer.exe), you can get it from Docker Hub. It typically downloads to your Downloads folder, or you can run it from the recent downloads bar at the bottom of your web browser.

2. When prompted, ensure the Enable Hyper-V Windows Features option is selected on the Configuration page.

3. Follow the instructions on the installation wizard to authorize the installer and proceed with the install.

4. When the installation is successful, click Close to complete the installation process.

5. If your admin account is different to your user account, you must add the user to the docker-users group. Run Computer Management as an administrator and navigate to Local Users and Groups > Groups > docker-users. Right-click to add the user to the group. Log out and log back in for the changes to take effect.

Start Docker Desktop

The Docker Icon Running in the background

The Docker Icon running

When the initialization is complete, Docker Desktop launches the onboarding tutorial. The tutorial includes a simple exercise to build an example Docker image, run it as a container, push and save the image to Docker Hub.

Docker Application running

Some useful Commands:

You can use the following procedure to save and restore images and container data. For example, if you want to switch between Edge and Stable, or to reset your VM disk:

  1. Use docker save -o images.tar image1 [image2 ...] to save any images you want to keep.
  2. Use docker export -o myContainner1.tar container1 to export containers you want to keep.
  3. Use docker load -i images.tar to reload previously saved images.
  4. Use docker import -i myContainer1.tar to create a file system image corresponding to the previously exported containers.

References:

Cyber Security Analyst | Intern at VIEH Group https://viehgroup.com/