Block a user
embedded/arm-cortex-m (latest)
Published 2026-01-25 20:20:30 +03:00 by tevfik
Installation
docker pull git.bezg.in/tevfik/embedded/arm-cortex-m:latestsha256:d6a40687b8ed2d2897b1874d3272d88d05ce671520e90dff20ddf083e410b5c0
Image Layers
| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.ref.name=ubuntu |
| LABEL org.opencontainers.image.version=22.04 |
| ADD file:b499000226bd9a7c562ffa8eeb86e2d170f2a563310db6c2d79562ab53e5cb6e in / |
| CMD ["/bin/bash"] |
| LABEL maintainer=Embedded Development |
| LABEL description=ARM Cortex-M development environment with GCC, OpenOCD, and debugging tools |
| LABEL version=1.0 |
| ENV DEBIAN_FRONTEND=noninteractive |
| ENV TZ=UTC |
| RUN /bin/sh -c apt-get update && apt-get install -y build-essential cmake ninja-build git git-lfs wget curl python3 python3-pip libusb-1.0-0-dev libtool pkg-config autoconf automake texinfo libftdi-dev libhidapi-dev libjaylink-dev udev gdb-multiarch screen minicom xxd ca-certificates && rm -rf /var/lib/apt/lists/* # buildkit |
| ARG ARM_TOOLCHAIN_VERSION=13.3.rel1 |
| RUN |1 ARM_TOOLCHAIN_VERSION=13.3.rel1 /bin/sh -c cd /tmp && wget -q https://developer.arm.com/-/media/Files/downloads/gnu/${ARM_TOOLCHAIN_VERSION}/binrel/arm-gnu-toolchain-${ARM_TOOLCHAIN_VERSION}-x86_64-arm-none-eabi.tar.xz && tar -xf arm-gnu-toolchain-${ARM_TOOLCHAIN_VERSION}-x86_64-arm-none-eabi.tar.xz -C /opt && rm arm-gnu-toolchain-${ARM_TOOLCHAIN_VERSION}-x86_64-arm-none-eabi.tar.xz && ln -s /opt/arm-gnu-toolchain-${ARM_TOOLCHAIN_VERSION}-x86_64-arm-none-eabi /opt/arm-toolchain # buildkit |
| ENV PATH=/opt/arm-toolchain/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| ARG OPENOCD_VERSION=0.12.0 |
| RUN |2 ARM_TOOLCHAIN_VERSION=13.3.rel1 OPENOCD_VERSION=0.12.0 /bin/sh -c cd /tmp && git clone --depth 1 --branch v${OPENOCD_VERSION} https://github.com/openocd-org/openocd.git && cd openocd && ./bootstrap && ./configure --enable-stlink --enable-jlink --enable-ftdi --enable-cmsis-dap --enable-picoprobe --prefix=/usr/local && make -j$(nproc) && make install && cd / && rm -rf /tmp/openocd # buildkit |
| RUN |2 ARM_TOOLCHAIN_VERSION=13.3.rel1 OPENOCD_VERSION=0.12.0 /bin/sh -c cd /tmp && git clone --depth 1 https://github.com/stlink-org/stlink.git && cd stlink && cmake -B build -DCMAKE_BUILD_TYPE=Release && cmake --build build && cmake --install build && cd / && rm -rf /tmp/stlink # buildkit |
| RUN |2 ARM_TOOLCHAIN_VERSION=13.3.rel1 OPENOCD_VERSION=0.12.0 /bin/sh -c mkdir -p /etc/udev/rules.d && echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", MODE="0666"' > /etc/udev/rules.d/49-stlink.rules && echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="1366", MODE="0666"' > /etc/udev/rules.d/49-jlink.rules # buildkit |
| ARG USERNAME=developer |
| ARG USER_UID=1000 |
| ARG USER_GID=1000 |
| RUN |5 ARM_TOOLCHAIN_VERSION=13.3.rel1 OPENOCD_VERSION=0.12.0 USERNAME=developer USER_UID=1000 USER_GID=1000 /bin/sh -c groupadd --gid $USER_GID $USERNAME && useradd --uid $USER_UID --gid $USER_GID -m $USERNAME && usermod -aG dialout,plugdev $USERNAME # buildkit |
| WORKDIR /workspace |
| USER developer |
| RUN |5 ARM_TOOLCHAIN_VERSION=13.3.rel1 OPENOCD_VERSION=0.12.0 USERNAME=developer USER_UID=1000 USER_GID=1000 /bin/sh -c arm-none-eabi-gcc --version && openocd --version && st-info --version || true && echo "ARM Cortex-M Development Container Ready!" # buildkit |
| CMD ["/bin/bash"] |
Labels
| Key | Value |
|---|---|
| description | ARM Cortex-M development environment with GCC, OpenOCD, and debugging tools |
| maintainer | Embedded Development |
| org.opencontainers.image.ref.name | ubuntu |
| org.opencontainers.image.version | 22.04 |
| version | 1.0 |