Tiller image for s390x

Helm is one of the most used images by the Kubernetes community as package manager. There are plans to add the multi-arch support for the tiller image (see https://github.com/helm/helm/pull/5039). However, at the moment this post has been written, only the container image for amd64 is available. In this post, I will explain a quick and easy method to build locally the tiller image for s390x.

First of all, we need to get the helm and tiller binaries. The helm community already builds and offers the s390x binaries (see https://github.com/helm/helm/releases). Then, we can use the Dockerfile provided by the helm upstream repository to build the tiller container image. Here the steps how to do it:


$ version=v2.13.1
$ tag=2.13.1
$ wget https://storage.googleapis.com/kubernetes-helm/helm-${version}-linux-s390x.tar.gz
$ tar xf helm-${version}-linux-s390x.tar.gz
$ cd linux-s390x/
$ wget https://raw.githubusercontent.com/helm/helm/master/rootfs/Dockerfile
$ docker build -t gcr.io/kubernetes-helm/tiller:${tag} .
Sending build context to Docker daemon 74.25MB
Step 1/8 : FROM alpine:3.7
---> 130df092f258
Step 2/8 : RUN apk update && apk add ca-certificates socat && rm -rf /var/cache/apk/*
---> Using cache
---> 4251a163d256
Step 3/8 : ENV HOME /tmp
---> Using cache
---> cba0f51aedb6
Step 4/8 : COPY helm /helm
---> Using cache
---> b043f8763ee0
Step 5/8 : COPY tiller /tiller
---> Using cache
---> b1e7d32970ff
Step 6/8 : EXPOSE 44134
---> Using cache
---> 519ecc1d9ab3
Step 7/8 : USER 65534
---> Using cache
---> 52bd1db0dfe3
Step 8/8 : ENTRYPOINT ["/tiller"]
---> Using cache
---> fb5b41b06081
Successfully built fb5b41b06081
Successfully tagged gcr.io/kubernetes-helm/tiller:2.13.1

Check:


$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
gcr.io/kubernetes-helm/tiller 2.13.1 fb5b41b06081 28 minutes ago 83MB
$ docker run gcr.io/kubernetes-helm/tiller:2.13.1 
[main] 2019/04/24 11:23:21 Starting Tiller v2.13.1 (tls=false)
[main] 2019/04/24 11:23:21 GRPC listening on :44134
[main] 2019/04/24 11:23:21 Probes listening on :44135
[main] 2019/04/24 11:23:21 Storage driver is ConfigMap
[main] 2019/04/24 11:23:21 Max history per release is 0

Have fun with helm!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s