44 posts
Software Engineer at advarics GmbH

Keycloak Extensions

In the previous article, we explored the straightforward process of customizing Keycloak’s user interface. Now, let’s dive into the world of SPIs (Service Provider Interfaces) and discover how we can extend Keycloak’s functionalities by implementing our own. To accomplish this, we’ll need the following set of tools:: Apache Maven Eclipse (or any other IDE that supports Java and Maven) Java SDK (download from here and install it before continuing with the article) If you prefer, you have the option to run Keycloak instances using Docker, although it is not mandatory. To simplify the process, I’ve included a set of Dockerfiles […]

Keycloak Templating

This is the third article from the series on using Keycloak. While previous ones were dealing with running Keycloak in Kubernetes this one is about templating Keycloak. Therefore, I won’t be describing how a Keycloak instance can be run and what configuration options one should use. Instead, I will focus on building an easy to use environment for templating and designing Keycloak forms. The environment presented here is the same I am using for my professional work. So, everything shown here is based on real-world experience. This should not mean that it’s the “best” one. I am only sharing my […]

Keycloak with PostgreSQL-HA on Kubernetes

This is a follow-up to my previous article on how to setup a Keycloak instance with Postgres on k8s. Surprisingly, it was quite popular on HackerNews and received lots of comments. Among them were questions regarding high-availability and failure resistance. In the original article I described a fairly simple setup running Keycloak and Postgres pods which were accessing manually created PersistenceVolumes and Claims. I showed how to do all that both with handcrafted YAMLs as well as with Helm charts. There is also a repository containing YAMLs and configurations, so before you start working with the solution described here, maybe […]

Keycloak with PostgreSQL on Kubernetes

In this article we will learn how to deploy Keycloak with PostgreSQL on Kubernetes. We will first do everything manually with separate YAMLs and then later with Helm. Our k8s environment will run in Kind, which is an easy to use k8s variant for local expermentation. The sources are located here. Keycloak Keycloak is one of the most popular open-source Identity and Access Management providers. It can run in various environments, from small shops up to giant data centers. Although this article isn’t about IAM’s in general and how to use them, let’s provide a simple definition just to make […]

GnuCOBOL on Windows – from Compilation to HelloWorld

COBOL is an old language from 1959, partly based on programming language work by Grace Hopper, with a strong focus on business applications. There are still many COBOL programs running around the globe, mostly in banking, insurance, and governments. Although frequently criticized as a sloppy designed, non-computer-scientific, and a badly structured language in general, COBOL still dominates in many fields that affect our daily lives. For example, when you interact with your bank account there’s almost always some piece of COBOL code quietly working along. When you deal with any kind of “bureaucracy” there’s almost always some complex COBOL-based batch-process that […]

Running a full Bitcoin node on Raspberry Pi 3

In this article we’ll compile and configure a full Bitcoin Core Node that runs on a Raspberry Pi 3. “Raspies” are tiny computers that can run various OSes, like Linux, or Windows IoT Core. We’ll install Linux by using the NOOBS installer, which provides a Debian-based distribution called Raspbian.  Here are a few photos of my Raspberry node: You can download my scripts and config files here. But before we jump into the game let’s write down all the needed hard- & software parts, and their respective links. Hardware Raspberry Pi 3 Model B SD-Card 200GB Class 10  Seagate 2TB […]

Bitcoin Internals, Part 2

In this installment we’ll be talking about Transactions. As we already know a Bitcoin Block contains a Header and a collection of Transactions. We’ve already learned about how important Headers are and how they constitute a back-linked block-chain that helps to maintain the integrity of recorded transactions. Now the two new questions are: What does a Transaction look like? and How do we use it to transfer coins from address to address? And just like in the previous article I’ll be presenting a simplified C++ code here, while the real C++ code will be pointed to via links to Bitcoin’s […]