Skip to content

Make RADI Docker build architecture-aware (fix colcon build on arm64)#3405

Merged
javizqh merged 1 commit intoJdeRobot:humble-develfrom
morty649:fix/arm64-colcon-build
Feb 24, 2026
Merged

Make RADI Docker build architecture-aware (fix colcon build on arm64)#3405
javizqh merged 1 commit intoJdeRobot:humble-develfrom
morty649:fix/arm64-colcon-build

Conversation

@morty649
Copy link
Copy Markdown

This PR makes the RADI Docker build architecture-aware by disabling
parallel colcon builds and LTO when building on arm64.

On Apple Silicon hosts, the amd64 base image runs under QEMU emulation.
In this scenario, parallel colcon builds with LTO enabled can fail with
GNU make jobserver errors when building Aerostack2 (as2_core).

The change preserves existing behavior on amd64.

@morty649
Copy link
Copy Markdown
Author

Note: I validated this change by successfully building the full RADI Docker image on Apple Silicon (arm64) using Docker Desktop. The build completes without the GNU make jobserver / LTO failure seen previously in as2_core.

@jmplaza
Copy link
Copy Markdown
Member

jmplaza commented Jan 22, 2026

Great contribution. Does that RADI work on your MacOS with Apple Silicon? A demo video of any RoboticsAcademy exercise solution running on that computer would be greatly illustrative

@morty649
Copy link
Copy Markdown
Author

Hello, following up what you said

I went ahead and built and ran RADI successfully on macOS (Apple Silicon). I set up a separate radi-run directory using docker-compose, brought up the PostgreSQL service, and connected it to the RADI container. The backend starts and the UI loads as expected.

At this point, I’ll pause and share a few progress screenshots (Apple Silicon build, PostgreSQL startup, and container logs/UI loading) before continuing further. I
before
beforerunningafterpulled
image

I had got into some issues and when i asked Chatgpt about those it did recommend me about adding a seperate radi-run directory and docker-compose with version: "3.8"
services:
my-postgres:
image: postgres:14
container_name: my-postgres
environment:
POSTGRES_DB: academy_db
POSTGRES_USER: user-dev
POSTGRES_PASSWORD: user-dev
POSTGRES_HOST_AUTH_METHOD: trust
ports:
- "5432:5432"

radi:
image: jderobot/robotics-academy:test
container_name: radi
depends_on:
- my-postgres
environment:
DB_NAME: academy_db
DB_USER: user-dev
DB_PASSWORD: user-dev
DB_HOST: my-postgres
DB_PORT: 5432
ports:
- "7164:7164"
- "7163:7163"
- "6080:6080"
-

  • but the ui on localhost:7164/academy is struck with loading examples and http://localhost:6080/vnc_lite.html is struck with a black screen for now. I will follow up shortly with those issues

@javizqh
Copy link
Copy Markdown
Member

javizqh commented Jan 22, 2026

Have you tested with the instructions found in the documentation https://github.com/JdeRobot/RoboticsAcademy/blob/humble-devel/docs%2FInstructionsForDevelopers.md ?

@morty649
Copy link
Copy Markdown
Author

I followed this documentation that you have provided in the Rtf decrease issue https://github.com/JdeRobot/RoboticsAcademy/blob/humble-devel/docs/generate_a_radi.md

@javizqh
Copy link
Copy Markdown
Member

javizqh commented Jan 23, 2026

Have you tested with the instructions found in the documentation https://github.com/JdeRobot/RoboticsAcademy/blob/humble-devel/docs%2FInstructionsForDevelopers.md ?

Those are for generating a new RADI. There is a page (main page) explaining how to launch Robotics Academy in differents enviroments, and that should work on Mac (an older contributor had it working)

@javizqh javizqh merged commit 6b6c76f into JdeRobot:humble-devel Feb 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants