Skip to main content

Docker Intro

What is Docker?

Docker is an open platform for developing, shipping, and running applications. With Docker, you can manage your infrastructure in the same ways you manage your applications. By taking advantage of Docker’s methodologies for shipping, testing, and deploying code quickly, you can significantly reduce the delay between writing code and running it in production.

Docker provides the ability to package and run an application in a loosely isolated environment called a container. The isolation and security allow you to run many containers simultaneously on a given host. Containers are lightweight and contain everything needed to run the application.

Docker is written in the Go programming language and takes advantage of several features of the Linux kernel to deliver its functionality. Docker uses a technology called namespaces to provide the isolated workspace called the container. When you run a container, Docker creates a set of namespaces for that container.

These namespaces provide a layer of isolation. Each aspect of a container runs in a separate namespace and its access is limited to that namespace.

Comments

Popular posts from this blog

Docker Activities 1

Docker Activities 1: Verify the environment and command line tools: 1. Verify the Docker version: theia@theiadocker-mohiindia:/home/project$ docker --version Docker version 19.03.6, build 369ce74a3c 2. Verify the IBMCloud Version: theia@theiadocker-mohiindia:/home/project$ ibmcloud version ibmcloud version 1.2.3+3577aee6-2020-09-25T14:34:09+00:00 3.Clone the git repository that contains the artifacts needed for this lab: theia@theiadocker-mohiindia:/home/project$ git clone https://gitlab.com/ibm/skills-network/courses/cc201.git Cloning into 'cc201'... remote: Enumerating objects: 755, done. remote: Counting objects: 100% (755/755), done. remote: Compressing objects: 100% (391/391), done. remote: Total 755 (delta 424), reused 654 (delta 352), pack-reused 0 Receiving objects: 100% (755/755), 6.43 MiB | 18.71 MiB/s, done. Resolving deltas: 100% (424/424), done. 4. Change to the directory for this lab. theia@theiadocker-mohiindia:/home/project$ cd cc201/labs/1_ContainersAndDocker/ ...

Docker Architecture

Docker Architecture: Docker uses a client-server architecture. The Docker client talks to the Docker daemon, which does the heavy lifting of building, running, and distributing your Docker containers. The Docker client and daemon can run on the same system, or you can connect a Docker client to a remote Docker daemon. The Docker client and daemon communicate using a REST API, over UNIX sockets or a network interface. Another Docker client is Docker Compose, that lets you work with applications consisting of a set of containers. The Docker daemon: The Docker daemon (dockerd) listens for Docker API requests and manages Docker objects such as images, containers, networks, and volumes. A daemon can also communicate with other daemons to manage Docker services. The Docker client: The Docker client (docker) is the primary way that many Docker users interact with Docker. When you use commands such as docker run, the client sends these commands to dockerd, which carries them out. The docker co...