Nextcloud Refresh – Part 3 – Full Restore

In the previous post on the topic, I’ve had a look at how to create manual or automated local and remote backups of a Nextcloud AIO instance. Also, I mentioned briefly that restoring an instance to a previous state works without a fuzz. In this post, I’ll have a closer look, as there is one significant shortcoming of the default procedure: It’s all or nothing!

Continue reading Nextcloud Refresh – Part 3 – Full Restore

Nextcloud Refresh – Part 2 – Backup

OK, so there we go, I now have a ‘refreshed’ Nextcloud installation. Everything runs in (hopefully) well maintained Docker containers. No longer do I have to deal with web server configuration, php variables, certificate renewals and sudden incompatibilities when upgrading the underlying operation system. Next step: Let’s get the backup / restore process working for this setup. In this post, I’ll have a look at how to create a local backup to get started with, and a remote backup, which is what I need for safety and redundancy reasons. Turns out that the difference between the two types of backups is small.

Continue reading Nextcloud Refresh – Part 2 – Backup

Nextcloud Refresh – Part 1 – Five Minutes to Launch

Once upon a time…

It’s been 12 years since I’ve locally installed Nextcloud, or rather Owncloud at the time, to become independent of public file storage, calendar and address book synchronization services. At the time, I used a Raspberry Pi 1. Ever since, I have updated and extended my initial installation, moved to more powerful hardware, made it redundant and pushed parts out to a rented bare metal server in a data center. Nevertheless, I pretty much still run it like I did back then: A custom tailored and maintained Apache web server, PHP and Nextcloud installation. That’s all nice and well, but I’m not really keen anymore to keep upgrading to the latest Apache and PHP versions by hand and modifying configuration settings whenever the operating system version changes. Also, time has moved on and things are much more ‘containerized’ compared to back then. And finally, I still use the file based SQLite database as the backend, which might at some point become too small and inflexible for my needs. So over a long ‘nerdy’ weekend, I’ve had a look at a somewhat more modern way to set-up a Nextcloud and then started to experiment.

Continue reading Nextcloud Refresh – Part 1 – Five Minutes to Launch

Scaleway Blocks Outgoing eMail Ports – Until You Identify

Recently, I wanted to configure a new service on my bare metal server hosted in a Scaleway data center that requires sending email. EMail by nature is difficult to configure, so I wasn’t surprised at first that it didn’t work. But whatever I tried, I could not get that server to work. At some point I pressed Wireshark into action and finally discovered the reason: The TCP connection to the eMail server was not established. So who is blocking this?

Continue reading Scaleway Blocks Outgoing eMail Ports – Until You Identify

Low Hanging Antennas

A quick blog post today on an interesting phenomenon I observed when I recently traveled to Norway: ‘Low Hanging Antennas’.

Yes, I am one of the few people who actually look for cellular antennas and how they are installed. In cities, antennas are typically installed on rooftops, usually extending well over the rooftop for greater coverage. In Norway, however, I noticed the opposite: In cities, many antennas are not installed on the rooftop, but on a wall of a building and sometimes also somewhat hidden by painting them the same color as the building.

Continue reading Low Hanging Antennas

Caddy as a Docker-Compose Reverse Proxy

It seems that every 10 years, a new web server comes along that becomes popular. When I started with hosting my own infrastructure, Apache, first launched in 1994, was the cool kid on the block. 10 years later in 2004, nginx saw the first light and has since become very successful. These days, I use nginx in my self-hosted infrastructure to act as a reverse proxy for my containerized services. It works well and is relatively easy to set up with this project from Evert Ramos, but it seems to be a bit of a niche thing. So I was wondering if there is an alternative to it, as it’s always good to have a plan B.

I am well aware of Traefik, but that’s a bit of an overkill for my needs. I need something simple to set up and maintain because I only need it to do two main things:

  • Serve as a reverse proxy for many Docker Compose based projects running on a single host.
  • The reverse proxy needs to automatically retrieve and update Letsencrypt certificates.

Long story short, say hello to Caddy, which was first released in 2015. At first, I thought Caddy was ‘just’ a Dockerized reverse proxy, but that was a misconception. In its ‘native’ form, Caddy has nothing to do with Docker, it runs as a standalone webserver that is easy to configure and has Letsencrypt capabilities built in. However, with this Docker Compose project by Lucas Lorentz, Caddy becomes a super easy to configure and to deploy reverse proxy for Docker Compose services. So let’s have a look:

Continue reading Caddy as a Docker-Compose Reverse Proxy

Changing Call Forwarding Settings While Roaming

Every few years, it’s interesting to do a reality check of mobile device or network features considered as stable or perhaps even legacy. And that’s because every now and then, things do change while you are not looking, and sometimes even for the better! Case in point: Call forwarding settings for voice calls while roaming.

Continue reading Changing Call Forwarding Settings While Roaming

From Selfoss to CommaFeed – RSS in 2025

I’ve been using RSS feeds to create a centralized place for me to read news pretty much since the Internet became a thing. The first mention of it I can find on this blog is 2013, when I installed Selfoss on a Raspberry Pi to collect the news for me. And before that I was using Google Reader for many years. At the time, I wondered if I was a dinosaur, because RSS feeds were portrayed by big tech to be a thing of the past. 12 years down the road and I use RSS feeds more than ever. But perhaps time has come for a bit of a change.

I like my self hosted Selfoss installation a lot, but the software seems to have fallen a bit behind times. Pretty soon, I have to update the VM it runs on, which means a new OS, new Apache version and a new PHP version. That’s likely a lot of work and quite frankly, the days when I relished tweaking Apache and PHP configuration parameters are long gone.

Today, a dockerized reverse proxy that can be installed in 2 minutes does the frontend job just fine, including the regular update of the TLS certificate. So I was looking for a way to use a dockerized version of Selfoss as well. And while there is a docker image and docker-compose project for it, it’s not from the official project, and I would have to convert and import my database, so I’m a bit hesitant to use it.

What I would like is a modern RSS feed reader with an official Docker container that is part of the project. So I looked around a bit, and it is really nice to see that there are many open source and self hosting alternatives around. After trying some of them, I decided to stay with CommaFeed. It is super simple to install as a docker-compose project, works well in the web browser, even on mobile, and has almost all options I need. No complexity, just a stream of news that I can mark as read after I’ve browsed through them.

There are only two features I’m missing: Many RSS feeds only offer the first few sentences of a new post. For reading the full article, one has to go to the respective web page. Selfoss had a generic way of scraping full web pages for an RSS stub that worked surprisingly well and is easy to use. CommaFeed also has options to do this, but it looks rather complicated to get it working. And so do the full feed solutions of other products as well. So I decided to see if I really need the feature. So far, the pain is manageable.

The second feature I am missing is that posts I mark with a star are kept indefinitely. At the moment, CommaFeed deletes them like all other entries after a year. That sounds like a limitation, as I have almost starred 2000 RSS entries over the past 12 years. At least that is what I thought at first. But then, I wondered how often I have actually looked at or searched for a starred entry in the past decade that is more than 1 year old!? I have to admit that the answer is < 10. So perhaps keeping starred entries indefinitely is not so important after all.

So it’s CommaFeed for me for the moment, and I wonder if it will stick to it for as long as I ran Selfoss. Let’s see.

Immich – Pictures and AI at Home

A problem that was not really pressing and hence unsolved for a long time is how to archive and synchronize images I and members of the family take regularly. Obviously, using a public cloud service for this was out of the question, my pictures are my pictures. Back in January, a friend made me aware of Immich, an open source and GNU APGL licensed ‘Self-hosted photo and video management solution’. Could this be a software to address my needs?

Continue reading Immich – Pictures and AI at Home