Adventuring with a Raspberry Pi

Adventuring with a Raspberry Pi
Photo by Paul Shore / Unsplash

I had a Raspberry Pi sitting around for quite some time, that I bought for using as a retro gaming station for my living room. That worked well for some time, but kids and a Playstation 5 took the scene and the Pi just stayed collecting dust somewhere in the house.

Recently though, I learned about https://briefer.cloud/ and really wanted to try self-hosting their software just to try it out and learn a bit in the process. I went searching for my old 'berry friend and then immediately repurposed it to run Ubuntu server 24.04 LTS. The process was absurdly easy with the Raspberry Pi Imager software, which allowed me to configure everything, including SSH and Wifi for a hassle-free experience connecting to it remotely.

After I got a remote connection to my Pi, I had some trouble following the deployment instructions of Briefer. It was time for me to learn a little about Nginx, port forwarding and docker and finally get Briefer running. I had issues using the application after running it from my Pi's IP address (http://192.168.1.120:3000) but that was just because Briefer requires a secure connection by default. I had to manually configure a domain to point to my WAN IP address, then configure Nginx to proxy HTTPS connections to Briefer and properly forward TCP connections from WAN to LAN via my poorly built router UI. Finally, I got everything working properly and could run and use the application.

The above experience showed me that running a home server is not without its challenges, but it also provides great learning opportunities in a totally controlled environment.

I always wanted to have a blog. The obvious next step from my journey with the Pi would be to try hosting a blog myself. While reading about blogging software I found out about Ghost (https://ghost.org/docs/introduction/) and immediately wanted to try it out. Connected to SSH to the Pi, followed the ghost-cli instructions and boom - my Pi crashed while building dependencies. To make matters worse, when I power-cycled the board, my SSH connection was just timing out. I thought it was over and the Pi was actually not suited for running Ghost. Connected a keyboard and video output to the board and logged into my Ubuntu Server using the terminal. First thing I did was to enable SSH back. Something seems to have broken the SSH server startup and I also had enabled my firewall (following Ghost Nginx instructions) but forgot to allow ssh with sudo ufw allow ssh.

Next, it was time to try installing Ghost again. This time, running directly from the Pi terminal, ghost install ran fairly quickly and everything worked. And I must say, what a beautifully written piece of software. From the docs, to the setup CLI, to the automatic configuration of everything, to the actual user-facing output and dashboards.

It's still early for me to tell whether I will continue using Ghost for Here be dragons, but I liked every step of the journey so far.

Subscribe to Here be dragons

Sign up now to get access to the library of members-only issues.
Jamie Larson
Subscribe