Articles

Migrating a Kubernetes PV to a new storage class

Migrating a Kubernetes PV to a new storage class thumbnail
Kubernetes provides an abstraction layer for persistent data storage. Volumes can be of various storage classes depending on user requirements. Those requirements can evolve with time, meaning that volumes sometimes need to be migrated from one storage class to another. This article introduces a method to do so.
KubernetesTutorials

Neighbridge homepage

Neighbridge homepage thumbnail
Neighbridge is an international community in Nagoya. I've been joining their events for quite some time and heard that their organizers wanted to improve their online visibility. As this relates to my line of work, I provided some help to design and deploy https://neighbridge.com
HTMLWeb

Countries tracker

Countries tracker thumbnail
Nagoya Global Friends is an international community in Nagoya whose events gather people from all over the worlds. In order to visualize the various countries represented, I designed a simple Firebase application. The application allows users to register their home country, which gets stored in a Firestore database.
FirebaseProjectsSvelte

Node.js testing for multiple environment variables

Node.js testing for multiple environment variables thumbnail
Some applications might require the same codebase to be tested with different sets of environment variables. This article proposes a simple way to do so.
Node.jsDevOpsTutorials

Generating certificates for an Aruba Instant AP using pfSense

Generating certificates for an Aruba Instant AP using pfSense thumbnail
Aruba IAP can use custom certificates when serving the Web UI over HTTPS. Those certificates can be generated, among others, using pfSense. This can be useful when trying to get rid of browser warnings regarding untrusted HTTPS connections
ArubaTutorialspfSense

Auto CRUD

Auto CRUD thumbnail
Most web applications that manage data in a database perform at least some form of create, read, update or delete (CRUD) operations on stored records. Moreover, web applications also often expose those operations via a REST API. Most database tables - corresponding to the entities manged by the application - need their own CRUD controller and set of HTTP endpoints. Because of this, large applications can quickly become tedious to develop and maintain. However, the logic for each table is usually quite similar. Auto CRUD has been developed to reduce this workload.
ExpressProjectsNPMPrismaDatabase

Persistent HDD APM settings

Persistent HDD APM settings thumbnail
An HDD can be configured to spin down after a certain time via the APM settings which can be managed by smartctl. Unfortunately, those settings do not persist after a reboot. This article presents a solution to the problem
TutorialsSystemdLinux

A router out of a desktop PC with pfSense

A router out of a desktop PC with pfSense thumbnail
My router needed to be replaced. However, instead of buying an off-the-shelf router, I decided to give pfSense a go and install it on a second-hand desktop computer.
pfSenseProjects

Solving Kong latency problems in Kubernetes

Solving Kong latency problems in Kubernetes thumbnail
Kong is a popular API gateway that can be used as a reverse proxy for clients to access back-end services. It can be run as a Docker container and, as such, can be deployed to Kubernetes. However, when doing so, requests might be severely impacted by unusually high latency. This can be solved by configuring the order in which Kong resolves DNS records.
KubernetesKongTutorials

GitLab Microk8s >1.24 certificate based integration

GitLab Microk8s >1.24 certificate based integration thumbnail
With newer versions of Microk8s, its GitLab integration changes slightly. Here are the key differences
KubernetesMicrok8sTutorialsGitLab