Skip to content

New versions of elcap changed the way they detect docker #5

@PoltoS

Description

@PoltoS

The Dockerfile attached used to work before (in May)

FROM debian:bookworm
ENV DEBIAN_FRONTEND=noninteractive

# Install packages
RUN apt-get update && apt-get install -y \
    openssl \
    wget \
    udev \
    libx11-xcb1 \
    libsm6 \
    libxcb-render-util0 \
    libxkbcommon0 \
    libxkbcommon-x11-0 \
    libxcb-render0 \
    libxcb-shape0 \
    libxcb-randr0 \
    libxcb-shm0 \
    libxcb-xfixes0 \
    libxcb-icccm4 \
    libxcb-image0 \
    libxcb-keysyms1 \
    libxcb-sync1 \
    libxext6 \
    libfontconfig1 \
    libfreetype6 \
    libxrender1 \
    libx11-6 \
    libglib2.0-0 \
    libice6 && \
    apt-get clean && rm -rf /var/lib/apt/lists/*

RUN /lib/systemd/systemd-udevd --daemon
RUN udevadm monitor &

WORKDIR /root

# Install JLink and ignore installation error
RUN wget https://www.segger.com/downloads/jlink/JLink_Linux_V840_x86_64.deb --post-data 'accept_license_agreement=accepted' && \
    dpkg -i *.deb || true && \
    rm *.deb

# Install and configure elcap
RUN wget https://github.com/tridentiot/elcap/releases/download/v0.1.17/elcap-v0.1.17-linux.tar.gz -qO - | tar -zxf - && \
    ./elcap config set tools.jlink_path /opt/SEGGER/JLink && \
    ./elcap sdk install v2025.05.00-beta00 || cat /root/.config/elcap/log/elcap-*.log && false

# Copy files

RUN wget https://raw.githubusercontent.com/tridentiot/z-way-esp-build-docker/refs/heads/main/cz20-firmware/zw_serial_api_controller_25.3.0_c1b95b00_dkncz20_usb_t32cz20_anz_debug_signed_combined.hex

COPY ZUnoXGCM_RT584_MPB.hex zigbee-onoff-bulb-dkncm11-combined.hex onoff_switch-dkncm11-combined.hex doorlock-dkncm11.hex zigbee-zniffer/build/T32CM11C.Debug/zniffer-dkncm11-combined.hex /root

COPY cmd.sh /root/cmd.sh

CMD /root/cmd.sh

Now it is not working anymore with:

24.05 SDK version v2025.05.00-beta00 installed                                                                                                                                                                     
24.05 ╭─ Container Engine Not Found ─────────────────────────────────────────────────╮                                                                                                                             
24.05 │ No container engine found.                                                   │
24.05 │                                                                              │
24.05 │ Possible Fixes:                                                              │
24.05 │  * Install Podman (recommended) or Docker                                    │
24.05 │  * Confirm Podman or Docker is available in your PATH                        │
24.05 │                                                                              │
24.05 │ A complete log of this run can be found here:                                │
24.05 │ "/root/.config/elcap/log/elcap-2025-11-11T20_38_32_459.log"                  │
24.05 │                                                                              │
24.05 │ Stuck?                                                                       │
24.05 │ Contact support at: https://tridentiot.com/contact-us/                       │
24.05 │ Or send the log file to us: support@tridentiot.com                           │
24.05 ╰──────────────────────────────────────────────────────────────────────────────╯

Any idea how to fix it?

Why am I using Docker? Because I can't run elcap on my OS (Ubuntu 20.04) and built a Docker container to flash Neptune boards with this: docker run -it --privileged --device=/dev/ttyACM0 elcap. And since I always flash the same things, I've added a few .hex files to my docker and on start a cmd.sh script asks me what to flash.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions