Skip to content

Latest Posts


Run local AI with llama.cpp using Podman Quadlets

Introduction

In the last post I showed how to run Ollama container using Podman Quadlets. Today I will demonstrate how to create llama.cpp container for local AI with the same approach. Llama.cpp is an engine used to run local AI models saved in GGUF files. While Ollama uses llama.cpp under the hood, it adds extra layers of functionality that can make running models slightly slower than using llama.cpp directly. Running Ollama was easier some time ago, but that is no longer the case, which I will show in this post.

OS used: Debian 13
Software used: Podman 5.4.2, Nvidia Container Toolkit 1.19.1, llama.cpp b9680, Open WebUI 0.9.6

Podman Quadlets

Introduction

In one of my previous posts about Podman I wrote that in the newer version of Podman (> 4.4), quadlets are recommended instead of podman-compose (both as an alternative to docker-compose). Now with Debian 13 we have an appropriate version of Podman to play with quadlets. Following current homelab trends, I will show how to install local AI using Podman and Quadlets, specifically setting up Ollama and Open WebUI. I want to keep this post short, so I will focus on installation on bare metal desktop computer. In such setup you don't need to configure PCI Passthrough which you need with virtual machines.

OS used: Debian 13
Software used: Podman 5.4.2, Nvidia Container Toolkit 1.19.1, Ollama 0.30.8, Open WebUI 0.9.6

Seafile in Docker with self-signed certificate

Introduction

Seafile is an open-source file-hosting and file-syncing software. It can be used to sync files across different devices in your possession. In comparison to other solutions like NextCloud, Seafile is very efficient in syncing large number of files (especially small files). I have used it in my homelab for a very long time so today, I will demonstrate how to install Seafile Community Edition with self-signed certificate using Docker.

OS used: Debian 13
Software used: Seafile 13

Upgrading Debian 12 to Debian 13

Introduction

Debian 13 was released in August 2025. I don't upgrade my servers right away to new version. I wait a few months and in the meantime tinker with new Debian in virtual machine on my desktop. This helps me to identify, if there are any major bugs in the software that I use in my homelab. In this post I will demonstrate how to upgrade Debian 12 "Bookworm" to Debian 13 "Trixie".

OS used: Debian 12, Debian 13

Zram swap

Introduction

When creating a virtual machine you can utilize swapfile on a disk as a precaution in case the VM runs low on RAM. In such configuration Linux system will use disk space as extra RAM. However, this has an undesirable effect that when disk is used as RAM the whole system can slow down. Generally if your VM is using swap then it's a good indicator to increase RAM. But if you don't have a possibility to increase RAM, then a method to prevent system slow down is to use zram as swap. Zram in this case can be treated as swap partition kept in RAM that will contain compressed data. This compression has some small performance penalty but allows to utilize more RAM than VM physically have. This post will show how to create swap using zram.

OS used: Debian 12
Software used: zram-tools 0.3.3.1

Self-hosted GitLab runner for CI/CD pipelines

Introduction

In this post I will continue explaining how to get more functionality out of GitLab. One way to automate homelab is to use CI/CD pipelines, and GitLab provides good tools for that. To utilize these CI/CD pipelines we need a GitLab Runner - a program that can be run on a server or even your own computer. However for security reasons, it's best to create a new virtual machine specifically for this task. This post will go into detail how to prepare VM with GitLab Runner.

OS used: Debian 12
Software used: GitLab Community Edition 17.11.1

Self-hosted GitLab container registry

Introduction

When we expand homelab infrastructure we often get to the point when custom solutions are necessary. A common example is creating custom Docker images to run containers. To develop images on one machine and then deploy them to others container registry is needed. In this post I will show how to run self-hosted container registry using GitLab.

OS used: Debian 12
Software used: GitLab Community Edition 17.11.1