Debugging sporadic connectivity issues of Docker containers

At work we have started to set up new continuous integration servers. We have decided to build the whole setup based on into individual Jenkins instance managed via Docker. Moreover, most build slaves on the instances are dynamically-created Docker containers themselves. To spawn up these slaves, the Jenkins masters need write access to the Docker socket. Of course, this would be a security implication if they had access to the socket of the main Docker daemon on the host that operates all services, including the Jenkins instances themselves. Thus, we added a second daemon to the host just for the purpose of executing the volatile build slaves. However, we soon noticed that containers executed on this additional daemon frequently showed DNS resolution errors. The remainder of this post will explain the details of how we tried to track down this problem with all the ugly details being involved there. ...

September 18, 2018 · updated April 30, 2021 · 9 min

autosuspend 2.0: Additions for Waking Up a System

Since a few years I am maintaining autosuspend, a small daemon that automatically suspends a Linux system in case no activity is detected. With version 2.0 I have added support for scheduled wake ups based on configurable checks for pending activities. ...

July 29, 2018 · updated April 30, 2021 · 2 min

Linux-based Home Entertainment System

Since two or three years I am experimenting with different solutions for my personal home entertainment system. Now that the solution has become quite stable I am going to describe my current setup and its evolution in this blog post hoping that someone might find it useful. ...

May 20, 2016 · updated April 30, 2021 · 4 min

autosuspend: Automatically Suspending a Server on Inactivity

A few months ago I sold my existing basic Synology NAS and built my own one based on a power-efficient Intel CPU inside a mini ITX system with a usual Linux as the operating system. This provided me with a lot more flexibility and e.g. possibilities to encrypt my data properly. One thing I needed for this custom solution was a daemon to suspend the system in case of inactivity to further reduce the power consumption. I found a few existing scripts online, started using one of them, but soon had to modify it deeply until it was general enough to suit my needs. Today, I finally took the time to clean up the last issues in the code base and the autosuspend project is now available on Github. ...

November 14, 2015 · updated April 30, 2021 · 2 min

My own cloud: Seafile

Continuing with my journey to replace publicly hosted cloud services with self-hosted solutions. One of the nice developments of the recent years are services like Dropbox or Google Drive, which really simplify some use cases. For example, in my own workflow I mainly use these services to a) synchronize unix configuration files, b) synchronize some random temp files I need on several computers or which I need from my phone (I am usually too lazy to get a cable), c) for easy sharing of photos or other files, and d) for synchronizing my Lightroom catalogue across devices, a quite heavy task because of the monolithic sqlite file with > 1 GB. There have only been a few cases where I actually used a shared folder for collaborative work. Computer scientists have better tools for such jobs. ;) So my need for something that is really accepted by many users is again questionable. Hence, I could easily search for a self-hosted solution without many drawbacks. ...

March 23, 2014 · updated April 30, 2021 · 4 min