Docker Installation

XCENA Docker image provides a fully pre-configured environment that includes both the SDK and Emulator, allowing you to start development without any manual installation steps.

This setup is ideal for users who:

  • Want to test XCENA SDK features without SW toolchain dependencies on the host system
  • Need a consistent, reproducible environment for emulator-based development
  • Work in environments where access to XCENA hardware is not available

Prerequisites

  • Docker Engine installed on the host system
  • For hardware: XCENA driver must be installed on the host
  • For emulator: KVM support required (/dev/kvm)

1. Pull Image

Obtain prebuilt image from Docker Hub. <tag> is the version name found in the release notes (e.g., 1.4.0).

docker pull xcenadev/sdk:<tag>

Alternatively, you can build the image manually using the Dockerfile provided in the SDK repository (dockerfiles/README).

2. Install driver on host

Skip this step if you’re planning to run only emulator in Docker.

If you have the SDK package:

wget <URL_to_sdk_xxx.tar.xz>
tar -xvf sdk_xxx.tar.xz
cd sdk_xxx/driver
sudo ./install.sh
sudo reboot

Or extract the driver from the Docker container. <container> is the container name or ID, which can be found using docker ps -a. This ensures compatibility between the driver and the SDK version in the container.

If you don’t have a container yet, create one with docker create:

# e.g., docker create --name xcena_sdk xcenadev/sdk:1.4.0
docker create --name <container> xcenadev/sdk:<tag>

Then copy the driver from the container:

# e.g., docker cp xcena_sdk:/work/driver ./
docker cp <container>:/work/driver ./
docker rm <container>
cd driver
sudo ./install.sh
sudo reboot

3. Run Docker Container

To ensure compatibility with the driver, you must run the container in privileged mode.

# e.g., docker run -it --privileged --name xcena_sdk xcenadev/sdk:1.4.0
docker run -it --privileged --name <container> xcenadev/sdk:<tag>

If you want to run emulator in Docker, run with KVM support, SYS_ADMIN capability, and user option (--device /dev/kvm, --cap-add=SYS_ADMIN, -e USER=$USER).

# e.g., docker run -it --name xcena_sdk --device=/dev/kvm --cap-add=SYS_ADMIN -e USER=$USER xcenadev/sdk:1.4.0
docker run -it --name <container> --device=/dev/kvm --cap-add=SYS_ADMIN -e USER=$USER xcenadev/sdk:<tag>

Navigate to the SDK directory (/work/) and check the installation contents, following the same procedure as described in Verify Installation.


Table of contents