A Docker image is a directory hierarchy containing the initial contents of a running container. It is represented by a manifest file which lists its layers, and each layer is a gzipped tarfile (.tgz files). Layers are stored as blobs named by digests of their contents.

As a sanity check…

For a full list of posts in this series, see Notes on Building a Raspberry Pi Kubernetes Cluster.

With an operational Kubernetes cluster, it’s time to run something! We’ll start with the very simple Go web server that’s listed below (save it as as tiny.go):

import (

This year (2021) I’ve been building and experimenting with Kubernetes on a cluster of Raspberry Pis. This is an index to a series of posts about things that I’ve done and learned in the process.

My cluster on March 6. It hasn’t taken over the house — yet!

Future topics include a few things that I’ve done and more that I hope to do:

  • Building a gRPC service
  • Building a “real” app: a gRPC service backed by a PostgreSQL database with a Flutter frontend
  • PostgreSQL on Kubernetes
  • Running repeated tasks on Kubernetes with CronJobs

For the first post in this series, see Part 1: the Hardware.

While this wasn’t the first thing that I did with my cluster, it was the first thing that I wanted to do, and now having reset and reinstalled everything a few times, it’s become the first thing that…

For the first post in this series, see Part 1: the Hardware.

Kubernetes is not famous for simplicity, so when I discovered that Canonical published a curated configuration of Kubernetes that I could install as a single package, microk8s became my system of choice for running my cluster.

I found…

For the first post in this series, see Part 1: the Hardware.

The Nodes and Network

Setting up my nodes and network was straightforward, but I’ll describe it here for completeness. …

Late last year I started thinking about building a Raspberry Pi cluster. For years I’d read about people running Kubernetes on Raspberry Pis and thought that the experience of building a Pi cluster would be a great learning exercise, but didn’t want to build a cluster to just run toy…

Using Go and PostgreSQL to analyze a year of streaming.

By now, Spotify users everywhere have gotten their 2019 Wrapped results. I wasn’t too surprised by mine, partly because I knew I’d spent a lot of time exercising to music by a soon-to-be-returning band from the 90s, but also because I’d recently used Spotify’s privacy data download to take a…

Logos for the OpenAPI Initiative and the gRPC project.

Spend some time working with OpenAPI and gRPC and you’ll notice that these two technologies have a lot in common. Both are open source efforts, both describe APIs, and both promise better experiences for API producers and consumers. So why do we need both? If we do, what value does…

By Pablo RM from Madrid, Spain [CC BY 2.0 (http://creativecommons.org/licenses/by/2.0)], via Wikimedia Commons

A year ago, I found a job in one of the world’s biggest API companies. You probably know us for Search, Mail, Maps, or any of the dozens of apps that we have in the Android and iOS app stores. Those apps range all the way from delivering YouTube, one…

Tim Burks

Software developer in the SF Bay area. Electronic Design Automation, iOS apps, and now API tools for the world’s largest computer.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store