From d16bc7332f8d07817e201c7550a2f478c1811b24 Mon Sep 17 00:00:00 2001 From: Nelson Date: Sat, 13 Dec 2025 13:02:38 +0000 Subject: [PATCH] Ensure devcontainer uses the platform of the toolchain (#1073) * Refactor devcontainer into Docker Compose We need to make the platform explicit (only via the Docker Compose) as the Dockerfile fetches a crosscompiler for x86. * Add git to dev container --- .devcontainer/Dockerfile | 2 +- .devcontainer/devcontainer.json | 8 ++++---- .devcontainer/docker-compose.yml | 10 ++++++++++ 3 files changed, 15 insertions(+), 5 deletions(-) create mode 100644 .devcontainer/docker-compose.yml diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 9273c85..ca9548b 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,6 +1,6 @@ FROM ubuntu:22.04 RUN apt-get update && apt-get upgrade -y && \ - apt-get install -y make wget xz-utils && \ + apt-get install -y git make wget xz-utils && \ wget -qO- "https://developer.arm.com/-/media/Files/downloads/gnu-a/10.2-2020.11/binrel/gcc-arm-10.2-2020.11-x86_64-arm-none-linux-gnueabihf.tar.xz?revision=d0b90559-3960-4e4b-9297-7ddbc3e52783&rev=d0b9055939604e4b92977ddbc3e52783&hash=0074C1529DE90C98726B80ED3EE0776C" | tar -xJ && \ mv gcc-arm-* /usr/local/bin && \ printf 'export PATH=$PATH:%s\n' /usr/local/bin/gcc-arm-*/bin >> ~/.bashrc && \ diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 601cce0..c0d3471 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,5 +1,5 @@ { - "build": { - "dockerfile": "Dockerfile" - } -} + "dockerComposeFile": "docker-compose.yml", + "service": "devcontainer", + "workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}" +} \ No newline at end of file diff --git a/.devcontainer/docker-compose.yml b/.devcontainer/docker-compose.yml new file mode 100644 index 0000000..b400b81 --- /dev/null +++ b/.devcontainer/docker-compose.yml @@ -0,0 +1,10 @@ +version: "3.8" +services: + devcontainer: + build: + context: . + dockerfile: Dockerfile + platform: linux/amd64 + volumes: + - ../..:/workspaces:cached + command: sleep infinity