ref: e5b73212f6addcfdb5e306df63d7135e543c4f8d
docker/Dockerfile
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
FROM ubuntu:22.04 ARG DEBIAN_FRONTEND=noninteractive ARG NODE_MAJOR=20 RUN apt-get update -qq \ && apt-get install -y ca-certificates curl gnupg \ && mkdir -p /etc/apt/keyrings \ && curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg \ && echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" > /etc/apt/sources.list.d/nodesource.list \ && apt-get update -qq \ && apt-get install -y \ # x86_64 / generic packages bash \ build-essential \ cmake \ git \ make \ nodejs \ python3 \ python3-pip \ python3-pil \ python-is-python3 \ tar \ unzip \ wget \ # aarch64 packages libffi-dev \ libssl-dev \ python3-dev \ git \ apt-utils \ pkg-config \ libpixman-1-dev \ libcairo2-dev \ libpango-1.0-0 \ ibpango1.0-dev \ libpangocairo-1.0-0 \ && rm -rf /var/cache/apt/* /var/lib/apt/lists/*; # Git needed for PROJECT_GIT_COMMIT_HASH variable setting RUN pip3 install adafruit-nrfutil RUN pip3 install -Iv cryptography==3.3 RUN pip3 install cbor RUN npm i lv_font_conv@1.5.2 -g # build.sh knows how to compile COPY build.sh /opt/ # Lets get each in a separate docker layer for better downloads # GCC RUN bash -c "source /opt/build.sh; GetGcc;" # NrfSdk RUN bash -c "source /opt/build.sh; GetNrfSdk;" # McuBoot RUN bash -c "source /opt/build.sh; GetMcuBoot;" ENV SOURCES_DIR /sources CMD ["/opt/build.sh"] |