Nextcloud on Kubernetes Part.1

I’m starting to work on deploying Nextcloud on Kubernetes, which should eventually replace my existing setup. I’ve been running Nextcloud using the official Snap package for years, and overall it has worked well. The main issue, however, is performance – it’s been quite slow at times. On top of that, I’m paying for a dedicated VM just to run it, which doesn’t feel very efficient anymore.

So, it’s time to move it into my Kubernetes cluster.

In Part 1, I’ll focus on setting up the core components – the database, NGINX, and the basic pieces needed just to get the service up and running. Later on, I’ll start adding the more advanced stuff: Redis, scaling with multiple pods, and some extra security improvements.

I might also experiment with a Helm-based approach at some point, but for now, I want to build everything from scratch to better understand how it all fits together.

Continue reading “Nextcloud on Kubernetes Part.1”

Deploy Bitwarden on Kubernetes with Helm

Running a password manager that is accessible from the public internet naturally raises an important question: what could go wrong? While solutions like Bitwarden offer convenience and cross-device access, they also introduce additional exposure that must be carefully managed.

For most users, I strongly recommend a locally stored, encrypted alternative such as KeePassXC. When combined with proper backup practices and strong encryption, this approach provides an excellent balance of security and control without increasing your attack surface.

That said, if you still require remote accessibility, it’s critical to implement strict security measures—at a minimum, restricting access to specific IP addresses.

In this article, I will walk through deploying Bitwarden on a Kubernetes cluster using Helm.

Continue reading “Deploy Bitwarden on Kubernetes with Helm”

Kubernetes-Based Deployment of the Kimai Time Tracking Platform

Kimai is an open-source time tracking platform designed for project-based work. It is built with Symfony and relies on a MySQL database for persistent storage, making it a solid candidate for deployment in a Kubernetes environment.

In a previous deployment of WordPress, I did not define resource requests and limits for my pods, which led to node resource exhaustion and instability. This time, I will explicitly configure resource constraints to avoid similar issues.

Before moving to Kubernetes manifests, I performed an initial installation on a Debian Trixie server to better understand the application’s structure and runtime requirements.

Continue reading “Kubernetes-Based Deployment of the Kimai Time Tracking Platform”

Building a Multi-Blogging Platform with WordPress Multisite on Kubernetes


The idea is simple. A blogging platform where anyone can register and get their own blog with a preinstalled website and a personal subdomain. Just log in and start publishing.

I will use WordPress Multisite. WordPress is simple, well-known, and built on a familiar tech stack: WordPress, MySQL, and a reverse proxy. That’s it.

Is Kubernetes the best choice for this setup? The honest answer: no. It’s too complex. Too many things can go wrong.

Can it scale? So-so. As long as the database can handle the requests, it should work.

So why am I doing this? Mostly for the fun of it. Many things could be done better. Credentials could be stored more securely, the database architecture could be improved, resources could be provisioned more efficiently, and scaling could be faster.

This article is a good reference for how I usually start my projects and gradually improve them. Along the way, I’ll cover some core Kubernetes concepts like Deployments, exposing applications to the internet, and building both stateless and stateful applications.

Image
Continue reading “Building a Multi-Blogging Platform with WordPress Multisite on Kubernetes”