How to configure Traefik so containers get automatic HTTPS subdomains through a naming convention, removing the need for per-service Traefik labels.

Technical and other Insights
It happens from time to time that we run into problems or situations in which finding a proper solution isn’t that easy. When we think that the solution we found is of interest to all of us, we use this blog format to archive and share our findings with you.

Technical and other Insights
It happens from time to time that we run into problems or situations in which finding a proper solution isn’t that easy. When we think that the solution we found is of interest to all of us, we use this blog format to archive and share our findings with you.
Part 3 of a series on Shopware 6 plugins with GitLab CI – running code quality checks and PHPUnit tests against a full Shopware instance inside the pipeline.
Part 2 of a series on Shopware 6 plugins with GitLab CI – how to build plugin assets fast using shopware-cli and GitLab caching for the release job.
Part 1 of a series on Shopware 6 plugins with GitLab CI – how to publish a plugin automatically via the GitLab Package Registry and semantic-release.
How we manage server software using GitOps, Docker Compose and Renovate Bot, with automated security updates via digest pinning and opt-in major upgrades.
How to configure Renovate with custom packageRules and a versioning regex so it correctly parses the Shopware marketing version number as a compatibility field.

A free accessibility statement template for the German BFSG law, with legal background, practical tips and sample wording to help avoid costly warning letters.
How to run GitLab via Docker Compose alongside other services, fronted by Traefik as a reverse proxy for TLS and a dedicated container registry.

From June 2025 Germany's Accessibility Empowerment Act requires many shops and apps to meet WCAG 2.1 AA – we explain who is affected, deadlines and costs.
Why DevOps work truly begins after launch – covering monitoring with Sentry and Grafana, alerting via Zabbix, and CI/CD pipelines for safe deployments.
An open-source Docker wrapper translates Amazon MWS calls into SP API calls, letting shops on outdated systems keep running without an expensive rewrite.

How to use dnsmasq to resolve only selected domains such as fritz.box via the VPN DNS server, while routing all other traffic outside the tunnel.
How a small core patch and the Linux parallel tool sped up Shopware 5 thumbnail generation for 1.6 million images from 80 hours down to 3.5 hours.

How to use filefrag and a bash one-liner to find the most heavily fragmented files on a BTRFS filesystem and defragment only those, reclaiming disk space.
A basic chroot often isn't enough – arch-chroot from Archlinux sets up dev, proc, sys, dev/pts, dev/shm and resolv.conf automatically, on any Linux distro.

Dirty benchmarks show cheap NVMe SSDs handle MySQL fsync workloads far faster than pricier Samsung Pro drives, which is why we now avoid them on workstations.

An fio benchmark on brand-new 16TB disks compares RAID5 and RAID10 under MDADM on sequential and random read/write performance, with a recommendation.

Why deleting data in Riak alone doesn't free disk space, and how our own riakcompact tool compacts eleveldb tombstones to reclaim significant storage.

A practical guide to using BTRFS snapshots for root filesystem and database backups, covering COW pitfalls, BTRFS-SxBackup and tips for restoring MySQL data.

The official Basho RIAK KV TS CS documentation is sometimes unreachable, so we set up a mirror at riak.docs.hw.ag to keep the content available.

An overview of our favorite tools – PHP, C++, Java, Scala, the Zend Framework, DHTMLX and InfiniDB – and why they help us build lean, high-performance software.