You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »


Background

Dobby uses the crun runtime underneath to actually run the containerized processes. This is a Red Hat maintained OCI runtime written in C. It is equivalent to the runc tool, which was originally developed by Docker and written in Go. crun was chosen for RDK platforms due to its significantly reduced footprint compared to runc, and easier integration with build systems. 

In brief, Dobby is a container management tool, to make it easy for other applications to start/stop/monitor containers. It can be thought of as a "Docker for the embedded world". 

This page demonstrates building a sample Java application in RDK framework and running in a container using Dobby in a RDK-B reference board ( Rpi ).

High Level Dobby Architecture

Major Dobby components in RDK-B:

  • DobbyDaemon

    • This is the main Dobby process, which is launched at bootup by systemd. When started, DobbyDaemon registers itself on dbus. It then idles and waits for commands over dbus to start, stop or inspect containers.

    • Some daemon settings are configurable in the /etc/dobby.json file. Note that many settings here (such as vpu/gpu device nodes) are only applicable to containers started from Dobby specs, not directly from OCI bundles.

  • DobbyTool

    • CLI to interact with Dobby for developers, and issue commands such as start, stop or info

    • This is really only meant as a development tool and is normally removed from production builds (building Dobby in RELEASE mode does not include DobbyTool by default)

Build Dobby in RDK-B

1.

2.

Build Java Application in RDK-B


Running Dobby Container in Rpi

This provides details on running containerized java applications using dobby in RDK-B Platform (Raspberry Pi)

Steps:

1.

2.

Validation:

1.

2.


  • No labels