Nathan's Notepad


Field notes from a software developer

A 1 KB Docker Container

No, that’s not a typo or a joke. I have created a Docker container containing a single Unix executable with no dependencies that occupies less than 1 KB of space on disk. There are no other files included in the container — not even libc.


Running Everything in Docker

Docker is a great way to run web applications and services in a container. With Docker, each container is isolated from the host which encourages composability and greatly improves security. In this article, I will describe how I prepared a number of services to run in Docker on one of my servers.


Building and Running Go Apps in Docker

With CGO_ENABLED=0 set, the Go compiler produces binaries with no runtime dependencies, not even libc. This greatly simplifies deploying the application in Docker since no base image is required. However, there are a few caveats and pitfalls that I would like to address in this article.


Building a Thermometer with an Arduino

In an attempt to better understand the effect of temperature and humidity in weather forecasting, I decided to build a small thermometer with an Arduino and a temperature sensor. In a future article, I will explore some of the data that I capture and the software that analyzes the data. This article will focus on the thermometer.


Running Debian 0.91 in qemu

Yes, you read that right. In this article, I am going to detail the process of getting Debian 0.91 up and running in qemu on an Ubuntu 16.04 host. The adventure promises to be a fun one since Debian 0.91 was released in… 1994.