-
How to Share Files on Linux Using Docker
Prerequisites: A Linux computer(mine is Fedora 36) Docker(or podman) installed I know, there’s traditional ways to share files over network such as samba or the very current cloud way such as Google Drive. Or I can just use a USB key. But I managed to impress my child(who has to use Windows because of her…
-
How to Build Multi-Arch Docker Images for MacBook M1
At work, I currently use a MacBook Pro with an Intel chipset and some of my colleagues have upgraded to ones with M1 chipset which is of arm64 or aarch64 architecture. Then expectedly I need to build some Docker images for both architectures. I’ve done some multi-arch Docker stuff before so this is not really…
-
Sideloader: An InitContainer to Sideload Stuff to Your Main Container
After having played with ArgoCD for a few days, I came cross a blog post on how to get Grafana Tanka to work with ArgoCD. I like the idea to have Tanka as a plugin of ArgoCD, because: The main ArgoCD docker image doesn’t get bloated by all those binaries we want to use with…
-
Build Multi-arch Docker Images on Ubuntu Linux
Since I’ve made my Raspberry PI Kubernetes cluster hybrid, now I have good reasons to build multi-arch(which means multi CPU architecture) Docker images so I don’t care if my pod is deployed to a Raspberry PI node or a X86 node. I followed a lot of instructions from this guide and finally made it work…
-
Golang and Docker Multi-Stage Build MK2
In my previous post I used Docker multi stage technique to build a Docker container image which only has the golang executable in a tiny Alpine Linux base image. I’ll go further to use the scratch base image which has basically nothing. Here’s the Dockerfile I tested on my own project, I’ve also added comments…
-
Golang and Docker Multi-Stage Build
I have noticed a common pattern amonst some new utilities such as kubectl, kops and terraform: There’s only 1 single executable file to install, and by ‘install’ it can be put anywhere as long as it’s in $PATH. This was before I learned some Golang but it’s easy to find out that the reason behind…
-
Home VPN with OpenVPN
Here are step to run a simple OpenVPN service at home, so that I can access home network easily while not at home. First, clone the git repo for OpenVPN docker container: git clone https://github.com/kylemanna/docker-openvpn.git I can use the pre-built docker image from docker hub but it has just been breached so I’d rather build…
-
Run Google Lighthouse in Docker Container
Thanks to my Colleague Simon’s suggestion, I was introduced to Google Lighthouse, an opensource nodejs framework to use Google Chrome to audit a website’s performance. I like Lighthouse because: opensource good portability can run as CLI command or as a nodejs module Here’s a sample Dockerfile to have a container ready to run Lighthouse with…