🧑‍💻 a blog about coding, devops, and stuff.

  • Proxy websocket connections with Apache2

    How to configure Apache2 to pass through web socket connections Recently I had to adjust an Apache Virtual Host to allow proxying of Web Socket requests to a service running on localhost which would also accept HTTP requests on the same port. The problem The service in question was Loki, the “Prometheus, but for logs” from Grafana. At Synoa we’ve […]

  • Validating variables in terraform

    Finally, terraform can validate input variables! With the 0.13 release terraform introduces input validation, and with the 1.0.0 releases it was stabilized! Before there was no way of validating variables other than checking their length or doing basic checks inside the code, for example in the locals.tf file, and errors with variables mostly came to light during […]

  • Darken and Lighten colors with CSS

    Recreating SASS darken() & lighten() function with CSS variables and calc The technique shown in this post uses the hsl color format in combination with the calc CSS function to calculate darker or lighter shades of a base color. Before we get into the code I want to make sure I did not come up with this, I found the […]

  • First steps with Traefik 2

    A tale of Auto SSL, Basic Auth, and lots of debugging Recently I’ve spent some time at work trying out Traefik 2 and learning about the new concepts like routers and middleware since we’ll use Traefik 2 as part of some new infrastructure. We’ve used Traefik 1 in production at Synoa for the past 3 years. Initially […]

  • TIL: Dots in /etc/sudoers.d filenames

    A tale of facepalms While reviewing some Ansible modules with a colleague we stumbled upon an issue with our user creation module, and for a briefe time couldn’t understand what was going on. The module in question creates multiple Linux users, adds them to groups, and enables some to use password less sudo via the /etc/sudoers.d config […]

  • Wildcards in Prometheus queries

    Learn how to query data in Prometheus and how to use wildcards Hello and welcome to this “snippet-sized” post about Prometheus queries! Prometheus is a time-series database which means it is build to collect a lot of datasets that show values over time, for example the result of a HTTP request or the RAM usage of a […]

  • TIL: Bash select

    I was recently researching different bash prompts and stumbled upon an StackExchange answer which explains the different prompt types (PS1, PS2, PS3, and PS4). The answer explains how the PS3 prompt is used for commands like select. I did not know about select before, so that’s the real TIL here! […] PS3 is shown when the select command is waiting for […]


You can follow this blog via ActivityPub at kevin@kevingimbel.de, follow my Mastodon account at @KevinGimbel@fosstodon.org, or subscribe via RSS.