Articles from Shishir Mahajan

What are Docker <none>:<none> images?

The last few days, I have spent some time playing around with Docker’s <none>:<none> images. I’m writing this post to explain how they work, and how they affect docker users. This article will try to address questions like:

  1. What are <none>:<none> images ?
  2. What are dangling images ?
  3. Why do I see a lot of <none>:<none> images when I do docker images -a ?
  4. What is the difference between docker images and docker images -a ?

Before I start answering these questions, let’s take a moment to remember that there are two kinds of <none>:<none> images, the good and the bad.

Read More »

Docker 1.8 and the New Daemon Command

Docker 1.8 fixes a long term problem with handling of command line options. It introduces the docker daemon command which segregates the global options from the daemon options.

Docker daemon is a background server side process that manages images and containers. It is a child of the init system e.g systemd and can be started using systemd unit files. For the purpose of this article we will using linux distribution fedora.

A system administrator can execute systemctl start docker to start the docker daemon.

Read More »

Increasing the Base Device Size on Docker Daemon Restart

Sometime back I wrote a feature for docker to allow expanding Base device size on daemon restart. This feature has been included in Docker 1.10, so you can try it out now.

Before we jump further into this article, I would like to point out that this feature is only available for devicemapper storage and does not apply to other storage drivers like overlay, btrfs, aufs, etc.

Read More »

Working with Docker LVM Plugin

Recently Docker introduced a volume command (docker volume –help for more information) to allow users to create a logical volume and then bind-mount it inside the container at container creation/runtime. You can achieve this by:

local_volume_foobar

This will create a logical volume foobar mounted at filesystem location /var/lib/docker/volumes.

Now, you can bind mount the foobar volume into the /run directory inside the container.

bind_mount_foobar_local

Read More »