Willkommen. Die Einträge in diesem Blog sind eine lose Sammlung von technischem Wissen, das ich bei meiner Arbeit gelegentlich für wiederverwendbar und nützlich halte. Der hier zu findende Inhalt ist keine erschöpfende Präsentation meiner Fähigkeiten, sondern in erster Linie ein Nachschlagewerk für mich selbst. In den Stories findet man einen Auszug von Themengebieten, denen ich bereits begegnet bin und die ich für hinreichend einfach halte, um sie hier kurz zusammenfassen zu können.
Posted in Technologisch on Dez 13, 2024
Configures a bind9 DNS server to receive RFC2136-compliant zone updates from kubernetes cert-manager for the DNS01 challenge to receive wildcard certificates on a domain.
Posted in Technologisch on Jun 18, 2023
PolicyKit ist eine Technologie, um Authorization innerhalb von UNIX-Programmen systemweit zu zentralisieren.
Im Vergleich mit anderen Security-Technologien:
Beispiel für eine Policy, die das Starten des SSHd Systemd Service für einen bestimmten Nutzer erlaubt:
// /etc/polkit-1/rules.d/sshd-for-tim.rules
polkit.addRule(function(action, s...
Posted on Jun 26, 2022
Wenn man in git einen Commit löscht, indem man
git reset --hard HEAD~1
git push --force
ausführt, dann werden die erzeugten Objekte (unter .git/objects) nicht wirklich gelöscht, sondern nur die Referenzen darauf entfernt. Um auch die nicht mehr benötigten Objekte zu löschen, muss man (auch auf dem remote) folgendes ausführen:
git -c gc.reflogExpire=0 -c gc.reflogExpireUnreachable=0 -c gc.rerereresolved=0 -c gc.rerereunresolved=0 -c gc.pruneExpire=now gc
Posted in Technologisch on Jun 15, 2022
select table_schema, pg_size_pretty(sum(pg_relation_size(table_schema || '.' || table_name)))
from information_schema.tables
where table_schema in ('public', '_timescaledb_internal') and table_type = 'BASE TABLE'
group by table_schema
order by 2 desc
Posted in Technologisch on Jun 15, 2021
Boilerplate-Code für das Einbinden von Hibernate ORM und dessen Konfiguration über projektspezifische Overrides aus z.B. einer config.yaml
Posted in Technologisch on Mai 26, 2021
Gelegentlich brauche ich eine Template-Engine für meine Microservices. Wenn keine besonderen Anforderungen bestehen, ist meine Go-To-Lösung dafür zumeist Thymeleaf. Um Thymeleaf in einem Microservice einzusetzen, habe ich hier mal den Boilerplate-Code zusammengefasst, mit dem man immerhin schonmal prinzipiell ein Template verarbeiten kann.
Posted in Technologisch on Mai 16, 2021
Ein kurzer Boilerplate für die Konfigurationdatei für Log4j2
Posted in Stories on Apr 16, 2021
Ich habe meine Template-Implementierung aus dem R-Syslog-Projekt in eine wiederverwendbare Komponente ausgelagert. Durch die Einfachheit der Implementierung ist die entstandene Bibliothek extrem schnell, speicherschonend und sehr leicht zu bedienen.
Posted in Technologisch on Apr 13, 2021
Da ich des Öfteren Java-Projekte mit dem Build-System Gradle aufsetze und darin Fat-Jars erzeuge (ein ausführbares Java-Archive-Artefakt, bei dem alle Dependencies transitiv mit eingebunden werden) habe ich den Code-Snippet für Gradle hier einmal als Gedankenstütze hinterlegt.
Posted in Stories on Apr 10, 2021
Für einen Kunden sollten wir einen internen Web-Service über ein Reverse Proxy für ein weiteres Subnetz verfügbar machen. Das funktionierte problemlos bis auf ein Anwendungsfeature: Stomp über Websockets.