How to Manage Containers in the IGEL UMS Web App

Managing a container through the IGEL UMS Web App consists of two main stages:

  1. First, you upload the container configuration file and assign it to an IGEL OS device through a profile.

  2. Then you need to create the container via the Device Configurator in the UMS Web App.

As soon as at least one container was created, you can view and manage the container from the Managed Containers tab.


Before continuing with the below instructions, make sure you meet the requirements and completed the initial configurations as mentioned in Prerequisites for Running the IGEL Managed Containers App.

Preparing the Container Configuration File

Prerequisites

  • IMC uses a subset of the Compose specification as a configuration format for defining a single container. It expects that the configuration will only contain one service that will configure one container.

IMC currently does not support all Compose functionalities. For more information, see Unsupported Compose Features.

If the container requires network connectivity, communication with other applications, or access to USB peripherals such as a camera, you must define the required access and permissions in the container configuration file. For an example of how to forward a USB device into a container, see Example 2 below.

  • The container configuration file must be available on the local machine from which the administrator accesses the UMS Web App.

Example 1: Configuration file for browser-based console access

The following example demonstrates how to create a container configuration file for a simple container with console access through a web browser:

services:
  ttyd:
    container_name: ttyd
    image: docker.io/library/alpine:latest
    command: [
      "sh",
      "-c",
      "apk add --no-cache ttyd && ttyd -W -p 7681 sh"
    ]
    # Simulate having the container in a NAT network, in rootless mode
    network_mode: private
    ports:
      - "7681:7681"
Example 2: Forwarding a USB device into a container

Pass a host USB device (serial adapter, scanner, smart-card reader, etc.) into a container with the Compose devices: key.

Example:

services:
  usb-app:
    image: docker.io/library/debian:stable
    devices:
      - "/dev/ttyUSB0:/dev/ttyUSB0"   # use your device node
    group_add:
      - keep-groups                   # carry host group access into the container - usually needed for full permissions to the device
    command: ["sh", "-c", "ls -l /dev/ttyUSB0 && sleep infinity"]

Find your device node first with ls -l /dev/ttyUSB* /dev/ttyACM* or lsusb. For a raw USB device, forward /dev/bus/usb:/dev/bus/usb instead.

Before installing the IMC app on an IGEL OS device, the container storage needs to be configured. For more information see Configuring the Container Storage.

Uploading the Container Configuration File to the UMS Web App

  1. In the UMS Web App, go to Configuration and click Files.

    Configuration_Files.jpg
  2. Click Create new directory Configuration_Create new directory_icon.jpg and name it IMC.

  3. Click Upload file Upload File.png and either drag & drop or browse through your files to upload the container configuration file to the IMC folder. Set the following configuration for the upload:

    • Classification: Undefined

    • Device file location: /services_rw/imc/config/

    • Owner: Root

    • Owner access rights:

      • Read

      • Write

    • Other access rights:

      • Read

        WUMS_Upload File.png


  4. Click Finish upload.

The container configuration file was uploaded to the UMS Web App.

Creating a Profile for the Container Configuration File

Profiles are used to transfer the container configuration file to the IGEL OS device. Follow the steps to create a profile and assign the container configuration file to it.

  1. Open the UMS Web App, go to Configuration and click Profiles.

    Configuration_Profile.jpg
  2. Click Create new profile Create new profile_icon.jpg .

  3. Name the profile, e.g. IMC-configurations, and click Select Apps.

    Profile Configurator_Name.jpg


  4. Select the IGEL OS Base System app and click Next.

    Profile Configurator_App Selector_Base System.jpg


  5. Close the profile configuration window without making any further changes.

  6. In the newly created profile, go to Contained Files and, in the Assign file search bar, enter the file name of the container configuration file. Once the entry with the same file name appears, select it.

    WUMS_Assign File.png


  7. In the confirmation dialog box that appears, click Yes.

The container configuration file has now been assigned to the profile.

Assigning the Container Profile to the IGEL OS Device

Make sure that the IMC app is installed on the target IGEL OS device before assigning the container profile.

  1. In the UMS Web App, go to Devices, select the device to which the container should be assigned to and click Assign object.

    WUMS_Assign Profile.png


  2. Assign the profile to the device and click Save and apply now.

    WUMS_Assign Profile_2.png

The container configuration file is transferred to the target IGEL OS device when the profile settings are applied.

Creating the Container via the Device Configurator in the IGEL UMS Web App

  1. In the UMS Web App, go to Devices, select the device to which the container should be assigned to and click Edit > Edit Configuration.

    WUMS_Edit Configuration.jpg


  2. Go to Apps > IGEL Managed Containers > Containers and click Add item image-20260803-145400.png to create a new container.

    Device Configurator_Containers_Create Container.png


  3. Name the container instance.

    Device Configurator_Containers_Name.png


  4. Click Settings and enter the name of the container configuration file which has been assigned to the IGEL OS device and click Save and Close.

    Device Configurator_Containers_yaml File.png


After the IGEL OS device applied the settings, the tab Managed Containers will appear on the device details page in the UMS Web App.

Managing Containers in the IGEL UMS Web App

When the target IGEL OS device received the container configuration file, restarted and at least one container was created, a new tab labeled Managed Containers is added.

WUMS_Devices_Managed Contairs tab_1.png

Click the refresh button Refresh button_icon.png to display the most recent list of containers and to determine their current status.

The available possibilities of managing containers on IGEL OS devices are described below.

Starting Containers

To start running a container, click Start Container_1.png or Start Container_2.png .

Managed Containers_Start.png

Clicking Start Container_1.png for All Containers will start all containers assigned to the specific device.

All Containers_Start.png

Stopping Containers

To stop running a container, click Stop Container_1.png or Stop Container_2.png .

Managed Containers_Stop.png

Clicking Stop Container_1.png for All Containers will stop all containers assigned to the specific device.

All Containers_Stop.png

Updating Container Images

To update a container image, click Update Container.png .

Managed Containers_Update.png
How the container image update works

The container configuration file contains the container image with a tag, for example latest. When the update process is triggered from the UMS Web App or the IGEL Managed Containers app, the container runtime checks whether a newer image is available.

If a newer image is available, the container runtime downloads it, creates a new container based on the updated image and removes the old container.

If no newer image is available, the existing container remains unchanged.