Home > On-Demand Archives > Theatre Talks >
Containerize All The Things. For Embedded? Really?
Drew Moseley - Watch Now - EOC 2023 - Duration: 40:36
Using containers in Embedded Linux devices is becoming more of a reality every day. Many of these devices are extremely high-powered and the benefits provided by containers are attractive to system designers. The ability to easily install, update and replace application payloads makes for a powerful design that is used in a variety of industries.
In this talk, Drew will provide an overview of containers, including a discussion of their architecture and implementation, as well as both technical and non-technical benefits of using them. We will discuss their impact on system performance as well as touch on the developer workflows needed to create and use them in systems.
We will then compare a few common approaches for creating, managing, and deploying containers including Docker, the Open Container Initiative) and OpenEmbedded. We will highlight the benefits of each approach and include considerations that designers can use to help decide which approach to use.
We will wrap up with some examples that highlight the value of containers in real-world use cases.
Hi @Mike.Foss,
Thanks for the feedback. Standard docker logging https://docs.docker.com/config/containers/logging) is what most of our users use. It's pretty good at capturing stdout and stderr. Getting remote access to the logs will require some extra features and I think systemd has some advantages there.
Again I learned a lot - thank you Mosely!
Thank you so much. Glad it was useful.
Great talk Drew,
I was wondering if you had any views on tools for managing pods of containers on embedded clusters via agents, such Kubernetes. Do you envision any adoption/integration of them by OpenEmbedded?
Hi @RaulPando,
I've never personally worked on a project using Kubernetes or similar. The typical projects I work on are fairly limited functionality and have limited scaling needs so using Kubernetes is generally overkill.
We have talked about possibly integrating something like k8s into our Torizon product but until we have a customer use case that needs it, I don't anticipate it will be implemented.
I know there is good integration as part of the meta-virtualization layer of k8s, k3s, and many other utilities so you can certainly implement a RYO solution here and I know there are people that do so but whether there are commercial implementations, I do not know.
Drew
This was very Linux and CLI orientated. Does it work under Windows and able to run an IDE?
Hi @moredatalesscenter,
There are certainly IDE extension for developing and running containers. And for our Torizon platform we have a Visual Studio Code plugin that will allow you develop your containers from an IDE and from Windows. See this link for more details about the Toradex solution for this: https://labs.toradex.com/projects/torizon-vs-code-v2-apollo-x
Other systems likely have something similar but I have not worked with any closely enough to provide much guidance.
Thank you for the talk; it was really neat to see Docker used with embedded systems!
We use a number of processes on our embedded Linux system and manage them as services with systemd, which provides some nice features like automatically restarting processes. It is convenient that they log print output to syslog. What do you do for logging messages like this when using Docker?