Mender blog

Yocto OTA updates - full root FS updates vs package vs container

You have to do OTA software updates for your Yocto image so what does the process look like? The first thing is deciding what kind of update you want. As a user you might tend to think immediately about RootFileSystem updates for operating the whole file system. This is a good choice for many. But not necessarily for all users. There are other kinds of updates that you can do, such as updating containers. It is very common now to run Docker and update the entire roof file system just to update a container. But this might be something of an overkill as it’s going to use so much bandwidth and take so much time. It can also wear out your flash memory very quickly. So thinking about what you want to update is the first thing you should do.

Root FS updates are core

The RootFileSystem updates are the core. RootFileSystem updates is the central use case of Mender.io and it is also the most difficult. So it requires the most investment in terms of board Integration and set up. You can get away with easier integration work, if you are only going to update Docker containers. But you can also update both RootFileSystem and Docker containers which may fit very naturally into a schedule where you have such as your own application update cycle every week. Whereas the whole RootFileSystem update might only be scheduled to take place once every six months.

Root FS update vs package update for Yocto

A full RootFileSystem update approach for Yocto is done quite rarely. The package based updating approach for Yocto is much more commonplace. It can be a bit more difficult to get that to work on Yocto. However, Docker updates are relevant for both Yocto and for Ubuntu. So, this depends on how your application works. But if your application is running in a container it's very likely that a container update would be the right choice to use in addition to, or instead of root FS updates. -%20far%20more%20customizable%20than%20Ubuntu%20-%20good%20for%20embedded%20projects%20because%20it's%20small%20and%20can%20be%20tailored%20as%20your%20use%20cases%20grow%20-%20it%E2%80%99s%20more%20modular%20-%20more%20flexible%20-%20predictable%20and%20stable%20%284%29

Docker containers and Yocto

Docker is just like an additional piece of software on top of your Yocto, so it's not really going to be any different. A container in its nature is not sensitive to which environment it's running and that's sort of the point of the containers. So as long as you have the docker daemon installed on your Yocto image, it should be the same as running it on Ubuntu. And actually, this also gives you the flexibility to move your application from Ubuntu to Yocto. If you started out that way for example.

Consider reading these other articles on Yocto:

Recent articles

An Overview of EU Cyber Resilience Act (CRA) Compliance

An Overview of EU Cyber Resilience Act (CRA) Compliance

Learn how the EU Cyber Resilience Act (CRA) enforces stringent cybersecurity requirements for PDEs. Explore compliance essentials in part 1 of 4
Mender versioning: New releases by component

Mender versioning: New releases by component

Explore Mender's shift to independent component releases and versioning, designed to enhance update speed and user clarity.
Driving secure innovation: ISO/SAE 21434 & UNECE compliance

Driving secure innovation: ISO/SAE 21434 & UNECE compliance

ISO/SAE 21434 and UNECE R155/R156 standards reshape cybersecurity in software-defined vehicles. Compliance with these frameworks is essential for protecting consumers, ensuring vehicle safety, and driving innovation in the automotive industry.
View more articles

Learn why leading companies choose Mender

Discover how Mender empowers both you and your customers with secure and reliable over-the-air updates for IoT devices. Focus on your product, and benefit from specialized OTA expertise and best practices.

 
sales-pipeline_295756365