Running on Linux
To run the main components of the SDV EDGE stack on an existing Linux distribution (e.g. Debian, Ubuntu, Raspberry Pi OS), you need to install the following packages.
Please note that since this is not a full-system installation, but an additional installation, there are some differences compared to the usual Leda installation on Docker/QEMU/Devices using our Quickstart image:
- The Self-Update use case is not used, as the distribution-specific channels apply. E.g. it does not make sense to use the Leda infrastructure to flash a full system image.
- The configuration differs slightly and you need to put some more work into getting the examples to work out of the box. This may include different port numbers, different paths of volume mounts for containers etc.
Debian-based Linux distributions
Tested on x86_64 via Docker:
- Debian 11
- Debian 12
- Ubuntu 20.04
- Ubuntu 22.04
- Ubuntu 23.10
Note: Ubuntu 18.04 is not supported, as the glibc is outdated.
Pre-Requisuites
The SDV stack requires the following packages to be present on the target system:
-
Mosquitto (adapt configuration, see below)
-
Data folders
-
Storage for Self Update Bundles:
mkdir -p /data/selfupdates
-
Device Certificates Folder:
# Required by Cloud Connector mkdir -p /data/var/certificates/ touch /data/var/certificates/device.crt touch /data/var/certificates/device.key
-
-
systemd (Optional: You can also manually start the services)
-
D-Bus (Optional: This is for Self Update Agent to RAUC integration)
-
RAUC (Optional: Only for Self-Update Use Case or testing purposes)
Installation Steps
Note: The steps below are examples for x86 platform. If you deploy on ARM64 platform, adapt the filenames accordingly.
-
Update repository and install dependencies:
apt-get update apt-get -y install ca-certificates mosquitto wget # Optional: apt-get -y install dbus rauc
-
Download the Debian package from the Eclipse Kanto release page
wget "https://github.com/eclipse-kanto/kanto/releases/download/v0.1.0-M3/kanto_0.1.0-M3_linux_x86_64.deb" apt-get install -y ./kanto_0.1.0-M3_linux_x86_64.deb # Check if Kanto has been installed command -v container-management command -v kanto-cm systemctl status container-management
Note: This will also install
containerd
. -
Download the Debian packages from the Eclipse Leda Utilities release page:
wget "https://github.com/eclipse-leda/leda-utils/releases/download/v0.0.2/eclipse-leda-utils_0.0.2.0.00680_all.deb" apt-get install -y ./eclipse-leda-utils_0.0.2.0.00680_all.deb command -v sdv-health wget "https://github.com/eclipse-leda/leda-utils/releases/download/v0.0.2/eclipse-leda-kantui_0.0.2.0.00680_amd64.deb" apt-get install -y ./eclipse-leda-kantui_0.0.2.0.00680_amd64.deb command -v kantui wget "https://github.com/eclipse-leda/leda-utils/releases/download/v0.0.2/eclipse-leda-kanto-auto-deployer_0.0.2.0.00680_amd64.deb" apt-get install -y ./eclipse-leda-kanto-auto-deployer_0.0.2.0.00680_amd64.deb command -v kanto-auto-deployer
-
Download the Debian package
eclipse-leda-container-*.deb
from the Eclipse Meta-Leda release page:wget "https://github.com/eclipse-leda/meta-leda/releases/download/0.1.0-M2/eclipse-leda-containers_0.1.0.2.0.422_all.deb" apt-get install -y ./eclipse-leda-containers_0.1.0.2.0.422_all.deb
-
Run the
kanto-auto-deployer
to deploy the core components:kanto-auto-deployer /var/containers/manifests
To install the example containers, run the following:
kanto-auto-deployer /var/containers/manifests/examples
Configuration Hacks
-
Mosquitto must be configured to allow anonymous access and listen on the network interface available to the containers. The easiest (and least secure!) configuration would be:
/etc/mosquitto/conf.d/public.conf
:listener 1883 0.0.0.0 allow_anonymous true
Attention: Only apply this configuration on a device in a secured network, or adapt the configuration accordingly (e.g. specify internal IP address)
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.