How Do You Use Ubuntu Core on a Raspberry Pi?


Ubuntu is a popular Linux distro that offers stability, multiple flavors with graphical interfaces, and a community of enthusiasts to help support each other. If you strip away the bells and whistles from Ubuntu, what remains is Ubuntu Core.

This is an OS that even the Raspberry Pi 2 is capable of running, not to mention later models such as the Pi 3 and 4. Pairing these two household names together will provide you with an outcome that is stable, frequently maintained, and well-supported for years to come.

Let’s dive into the possibilities that Ubuntu Core and Raspberry Pi are capable of together.

What Is Ubuntu Core?

Ubuntu Core is a stripped-down version of Linux with no graphical interface present. Although you’re restricted to the command line only, Ubuntu Core has a familiar ecosystem using the APT software package system that many Linux users are familiar with. Optionally, you are able to take advantage of Snap and Flatpak packages to install your favorite software as well.

This command-line Linux flavor is laser-focused on IoT and embedded environments, as security and reliable updates ensure the stability demanded by industry professionals.

Requirements & Installation

The following hardware will get you started with Ubuntu Core:

  • Raspberry Pi 2, 3, 4, 400, Zero 2 W, or Compute Module 4
  • 4GB+ microSD card and reader
  • Wi-Fi network or an Ethernet cable with an Internet connection
  • Monitor with an HDMI interface
  • An HDMI cable
  • USB keyboard

Once you have the required hardware, you’ll need to install Ubuntu Core on your Raspberry Pi. You can also download the Ubuntu Core image and use the Raspberry Pi Imager tool to install it. During the installation, you’ll want to ensure that SSH is enabled so that you can SSH into your Raspberry Pi when required.

Practical Uses for Ubuntu Core

There are many reasons why you might want to use Ubuntu Core over the standard Raspberry Pi OS.

IoT & App Development

Amazon smart speaker sitting on a book with the blue listening light on

Support for up to 10 years (with security updates and bug patches frequently) ensures peace of mind for your smart applications on your Raspberry Pi. Each IoT device gets its own cloud back-end to host and manage its own IoT app store. This will allow you to build your own ecosystem and manage monetization strategies as you see fit.

When you need to perform a fix, Ubuntu Core allows remote management in order to minimize downtime. If you’re new to the idea of cloud-based devices, explore the world of the Internet of Things (IoT) for details.

Snap creates an easy way for developers to deploy applications to multiple Linux distributions simultaneously. In addition, Snap packages use a container system allowing applications to utilize hardware that is specific to its needs. Snapcraft (Snap) has advantages and disadvantages that you should review before you start developing for the snap ecosystem.

Media Server

Raspberry Pi connected to external hard drive and network cables

For the personal enthusiast in you, Ubuntu Core and a Raspberry Pi make a good pair for deploying servers utilized for storing and sharing important files, streaming video and audio content, and security systems.

A storage system attached to your network will allow you to store important files on your Raspberry Pi and share them between computers in your home network. Samba is an included application with Ubuntu Core. With a little help from our guide to how to set up a network shared folder on Ubuntu with Samba, configuring this storage solution is straightforward.

Creating a media server is another great option that you can run on your Raspberry Pi. Instead of only being able to install Plex Server as an image on its own, you can install your Plex Server in a Docker container. To do so, check out our guide on how to set up a Linux media server. When your Plex Server is installed, you’ll then be able to access Plex via the address [Raspberry Pi’s IP]:32400 (unless you’ve modified the default port in the server setup).

Containers & Web Servers

person looking up at containers

When you’re looking for a safe space for your next project (or media server), a Docker container is a great way to ensure that your system is not impacted by a new application that’s installed in this containerized environment. With the help of our step-by-step assistance, installing Docker on Linux is simple. If you are in the mood for a web UI, you can also install Portainer on Linux.

Another web UI, Cockpit, is a great way to manage your Ubuntu Core system from another browser within your home network. Although SSH is a common practice to remotely access your graphics-free system, it can be nice to have a web-based interface to help you monitor your computer’s operation from afar. For some help, check out our guide to getting started with Cockpit.

Machine Learning

robots on a table connected to wires

Machine learning models often have specific requirements. A miniature version of Kubernetes, MicroK8s, provides a solution for this need. MicroK8s is ideal for when you need to serve up a service to many people all of a sudden (e.g., a ChatGPT chatbot).

You can eliminate cluster administration with MicroK8s and run your machine learning endeavor in a cluster of machines with high efficiency. MicroK8s can be installed locally using Snap and will enable your installed machine learning container(s) to run natively. This makes your development, including GPU acceleration projects, much easier to work on throughout pre-production stages.

Docker is a familiar name to the world of containers; however, Docker is more suited for container runtimes (running applications). Although the Kubernetes ecosystem (MicroK8s) may be more complex to set up initially, you’ll enjoy the ability to scale and reduce unnecessary administrative tasks in the long run.

In addition, a MicroK8 container can be stood up in under 60 seconds. Although many experts will utilize this solution, this is also helpful for developers wanting to develop locally. Read our step-by-step instructions on how to set up MicroK8s on Ubuntu for the first time.

Where Will Ubuntu Core and Raspberry Pi Take You Next?

There are many great ideas that will allow you to create your next digital adventure with Ubuntu Core and your Raspberry Pi. Perhaps, taking advantage of Juju or Akri will help you increase the success of your machine learning project. Also, you may be inclined to serving up an audio-only server to make the most out of your audio collection.

Best of all, the minimal resources that Ubuntu Core consumes makes this OS a perfect candidate for even a Raspberry Pi 2 to run.


Source link

Leave a Reply

%d bloggers like this: