Update FreshRSS

Introduction

Fortunately, FreshRSS is a very lightweight service that could easily be updated by a simple cd /usr/local/ww/FreshRSS && git pull.
But you don't have to, you can also do this as an admin user conveniently via the website itself in the administration.

Important: Check the Changelog beforehand to be prepared for certain update steps!

Last update:

  • 07.09.2024: Initial document

Backup

It is sufficient to create a complete TAR archive for the backup. In the first part of the article series, we set up FreshRSS in the directory /usr/local/www/FreshRSS.
The compressed TAR archive contains:

  • the SQLite databases of the users and the
  • Data of the FreshRSS application itself

This is ideal for saving it externally (preferably encrypted). Now we have to decide where the archive should be saved. Here we use the directory /mnt/backup, which (ideally) was mounted from outside the jail. This means that the backups are immediately stored independently and can then be backed up and processed separately via snapshots.

Manuell

A manual backup is carried out with a command, especially before an update:

tar -cpzhf /mnt/backup/data_`date +%Y%m%d`.tar.gz /usr/local/www/FreshRSS

Automatic

Regular backups are the be-all and end-all of a strategy. In this example, the directory /usr/local/www/FreshRSS is backed up by a cron job every evening at 10 pm and old backups are deleted at 10:10 pm after 30 days. The backup of the Nginx/PHP configuration is dealt with here.

echo "# FresRSS Backup" >> /etc/crontab
echo "0 22 * * * root "tar -cpzhf /mnt/backup/data_'$(date +\%Y\%m\%d)'.tar.gz /usr/local/www/FreshRSS"" >> /etc/crontab
echo "# FresRSS House keeping" >> /etc/crontab
echo "10 22 * * * root "find /mnt/backup/ -type f -mtime +30d -delete"" >> /etc/crontab

Update

Continue with pkg upgrade and then service nginx restart && service php_fpm restart to restart the web services.

Voilá