User Tools

Site Tools


projects:docker_intro

This is an old revision of the document!


Introduction to Docker

What is Docker ?

  • OS level virtualization on Linux
  • Resources isolation using Linux kernel features
  • Single OS, multiple containter instances
  • Application view on OS is isolated
  • Provides the same environment on all platforms.

<comparison image>

Union filesystem

advanced multi layered unification filesystem <BOOTFS>

Docker Family

Docker Inc

Commercial company behind Docker.

Docker Engine

Docker Engine runs on Linux to create the operating environment for your distributed applications.

Docker Daemon

Persistent Linux service that manages containers in the system.

Docker Client

Utilises Docker API to talk with the daemon.

Docker Machine

Automate Docker provisioning. Sets up docker or different systems (cloud, mac, windows)

Docker Registry

Docker Registry is an open source application dedicated to the storage and distribution of your Docker images.

Docker Compose

Docker Compose allows you to define your multi-container application with all of its dependencies in a single file, then spin your application up in a single command.

Docker Swarm

Docker Swarm provides native clustering capabilities to turn a group of Docker engines into a single, virtual Docker Engine.

Kitematic

Build and run containers through a simple, yet powerful graphical user interface (GUI).

Docker Datacenter

Docker Datacenter brings container management and deployment services to enterprises with a production-ready platform supported by Docker and hosted locally behind the firewall

Docker Cloud

A hosted service for Docker container management and deployment.

Docker Hub

Docker Hub is a cloud hosted service from Docker that provides registry capabilities for public and private content.

Docker Toolbox

Installer for Docker tools on Windows and Mac.

boot2docker

Minimalistic Linux distribution used to run Docker on Windows and Mac.

Concepts

Image

Container

Instance of the image.

The concept is borrowed from Shipping Containers, which define a standard to ship goods globally. Docker defines a standard to ship software.

Installation

  • Install toolbox
  • Setup environment variables accordingly to docker-machine env

Usage

  • run
    • -d
    • –name
    • -p
    • -v
  • build (Dockerfile) (python http server)
  • attach
  • exec
  • commit
  • export/save

What next?

  • Volumes
  • Networking
  • Logging
  • Orchestration

References

projects/docker_intro.1457895002.txt.gz · Last modified: 2016/03/13 19:50 by mkucia