Skrift : Running Umbraco on a Raspberry Pi

Updated to run on .NET 5

Posted on March 03, 2021

With the Umbraco Netcore release being upgraded to .NET 5 for the upcoming alpha releases, I wanted to update the scripts to run on .NET 5, where the original instructions ran on .NET Core 3. This is article was originally written to go along with the Skrift Article - Running umbraco on a raspberry pi or how i stopped worrying and learned to love linux.

Prerequisites

You will need a Raspberry Pi 3B+ or newer, as this is the oldest version of the device which supports .NET. 


Steps to reproduce : Make appropriate choices to try either the Alpha or nightly

1 - Set your Pi Up + connect to it (See the Skrift Article for details if you're stuck). You'll also want to update it

sudo apt-get update -y

sudo apt-get upgrade -y

2 - Run the .net Core install script

wget -O - https://raw.githubusercontent.com/CarlSargunar/UmbracoPi/main/Install/installCorev5.sh | sudo bash

3 - Reboot!

sudo reboot

4 - Add the Nuget source. There are nightly and Alpha releases - choose which to use.

For Alpha :

dotnet nuget add source "https://www.myget.org/F/umbracoprereleases/api/v3/index.json" -n "Umbraco Prereleases"

For Nightly :

dotnet nuget add source "https://www.myget.org/F/umbraconightly/api/v3/index.json" -n "Umbraco Nightly"

5 - Add the Template

For Alpha :

dotnet new -i Umbraco.Templates::0.5.0-alpha003

For Nightly :

dotnet new -i Umbraco.Templates::0.5.0-*

6 - Create the Project

dotnet new umbraco -n MyNewSite

7 - Build the Project

cd MyNewSite
dotnet build

8 - Run the Project

dotnet run

Once this has kicked off you will be able to access the site from https://localhost:5001

Note : As part of the installation process, the application will need to be restarted - this will happen automatically. You will need to re-run #8 to re-start the kestrel host of the website.

You will also need a SQL Server running on the same network as there is no database server support for Non-windows environments at present. In my example I use a SQL server running on the same environment, but one option would be to run SQL Server Express on Linux using Azure SQL Edge and Docker.



References

Deploy .NET apps to Raspberry Pi | Microsoft Docs

Install and use Microsoft Dot NET 5 with the Raspberry Pi - Pete Codes