Container of the Week – buildpack-deps

If you are like me then you have probably written the following code a lot as the first command in your Dockerfile:
RUN apt-get update && apt-get install git wget

or maybe you need to build a C program to run in your container and use something like this:

RUN apt-get update && \
    apt-get install autoconf automake gcc
It turns out that you can replace both of these scenarios with a base container image from the buildpack-deps library repository.

Continue reading “Container of the Week – buildpack-deps”

LinuxKit – the software-defined OS

If you were lucky enough to go to DockerCon 2017 (I wasn’t) you might have seen the announcement of Moby and LinuxKit, Docker’s new framework for assembling specialised container systems. Traditionally a bare metal or virtual machine that runs Docker has run a “full service” distribution like Debian, Ubuntu or RedHat Linux. Docker and containerized applications are then installed and run on that server. LinuxKit gives us a quick and easy way of building an OS for the host machine that’s customised to run containers and not a lot else.

Continue reading “LinuxKit – the software-defined OS”

Kubernetes Command Line Completion

I recently wrote an article about command line completion for Docker.  This is the parallel article for Kubernetes. The TLDR for command line completion in Docker was that it probably already works just fine. The same is not true for Kubernetes but is easily fixed.

Overall, the installation process for Kubernetes is still slightly complicated and there are many vendors making their own Kubernetes packages.  Unfortunately the majority of the effort is focussed on installing and configuring the server-side components of Kubernetes. This makes sense given the complexity involved, but it leaves users of the command line client out of luck. There’s good news though as it’s very easy to install the pieces needed for command line completion for Kubernetes. Continue reading “Kubernetes Command Line Completion”

Container of the Week – debian:jessie-slim

This week we are going to look at a very simple container, but one that I personally did not know about up until a few days ago. It’s a standard base container, but one with an important property that many users of Docker and Kubernetes are concerned about.

A base container is the container image used in the FROM command of your Dockerfile. Base containers are usually a customised minimal install of a full-sized Linux distribution such as Debian, Ubuntu or CentOS. Read on to find out more about the debian:jessie-slim base container.

Docker Command Line Completion

I remember the first time that I discovered command line completion for my shell way back in the early 90’s.  Up until then, you needed to remember the filename you wanted to use for any command and type the full name out in its entirety.  This could be a frustrating and error-prone process even if you were a good typist. From then on being able to hit TAB and get the right filename was just pure bliss!

Depending on your situation, command line completion for Docker client may already be working and you might not realise it!  Read on for details. Continue reading “Docker Command Line Completion”