1. Transfer the DCP to the device

Transfer the created DCP to the device using removable media or via SSH:

$ scp ~/container-demo/redis-demo-podman-ccimx95-dvk.tar.gz root@<device-ip>://root

2. Install the DCP

  1. Start the Container Manager command line interface on the device:

    # containerctl
    [ccmng]# 

    Press Tab to auto-complete command parameters and file paths.

  2. Install the DCP:

    [ccmng]# install artifact_path /root/redis-demo-podman-ccimx95-dvk.tar.gz
      id: redis-demo
      status: Running

    The install process of OCI-type (Podman/Docker) containers can take some time to complete (even minutes depending on the size). During this time, the OCI image is unpacked and initialized by the container runtime. This is expected behavior and only affects the initial deployment; subsequent container starts are much faster.

  3. Check the status of the installed containers:

    [ccmng]# status
    - id: redis-demo
      friendly_name: Redis Demo
      status: Running
    
  4. Print the log of the container:

    [ccmng]# logs id redis-demo
    - id: redis-demo
      logs:
        lines:
          - 1:C 20 May 2026 16:04:53.712 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can.
          - 1:C 20 May 2026 16:04:53.726 * oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
          - 1:C 20 May 2026 16:04:53.726 * Redis version=7.4.9, bits=64, commit=00000000, modified=0, pid=1, just started
          - 1:C 20 May 2026 16:04:53.726 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
          - 1:M 20 May 2026 16:04:53.730 * monotonic clock: POSIX clock_gettime
          -                 _._
          -            _.-``__ ''-._
          -       _.-``    `.  `_.  ''-._           Redis Community Edition
          -   .-`` .-```.  ```\/    _.,_ ''-._     7.4.9 (00000000/0) 64 bit
          -  (    '      ,       .-`  | `,    )     Running in standalone mode
          -  |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
          -  |    `-._   `._    /     _.-'    |     PID: 1
          -   `-._    `-._  `-./  _.-'    _.-'
          -  |`-._`-._    `-.__.-'    _.-'_.-'|
          -  |    `-._`-._        _.-'_.-'    |           https://redis.io
          -   `-._    `-._`-.__.-'_.-'    _.-'
          -  |`-._`-._    `-.__.-'    _.-'_.-'|
          -  |    `-._`-._        _.-'_.-'    |
          -   `-._    `-._`-.__.-'_.-'    _.-'
          -       `-._    `-.__.-'    _.-'
          -           `-._        _.-'
          -               `-.__.-'
          -
          - 1:M 20 May 2026 16:04:53.743 * Server initialized
          - 1:M 20 May 2026 16:04:53.744 * Loading RDB produced by version 7.4.9
          - 1:M 20 May 2026 16:04:53.744 * RDB age 846 seconds
          - 1:M 20 May 2026 16:04:53.744 * RDB memory usage when created 0.94 Mb
          - 1:M 20 May 2026 16:04:53.744 * Done loading RDB, keys loaded: 0, keys expired: 0.
          - 1:M 20 May 2026 16:04:53.745 * DB loaded from disk: 0.002 seconds
          - 1:M 20 May 2026 16:04:53.745 * Ready to accept connections tcp
        truncated: no

The Container Manager will now follow the instructions on the manifest of the DCP to:

  • monitor the container

  • gather status

  • start it when the system boots

  • restart it in case of unexpected stop/crash

3. Attach to the container

In Digi Embedded Yocto, OCI containers (such as Docker or Podman) are executed by podman engine.

To attach to the running redis-demo container:

  1. Type exit to quit the Container Manager command line interface.

  2. Run the following podman command to attach to the container and run a shell inside:

    # podman exec -it redis-demo /bin/sh
    
    #               <----this is the shell prompt of the container itself
  3. From inside the container prompt, check the distro details:

    # cat /etc/os-release
    NAME="Alpine Linux"
    ID=alpine
    VERSION_ID=3.21.7
    PRETTY_NAME="Alpine Linux v3.21"
    HOME_URL="https://alpinelinux.org/"
    BUG_REPORT_URL="https://gitlab.alpinelinux.org/alpine/aports/-/issues"