From b9370a3c85b00257159238dd2fe367d09e7cd010 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mete=20Fatih=20C=C4=B1r=C4=B1t?= Date: Wed, 15 Apr 2026 15:25:36 +0300 Subject: [PATCH] feat(docker-new): enable lo multicast and DDS sysctl tuning at startup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Apply the DDS network-tuning steps from the Autoware docs inside the container at entrypoint so they take effect in its own network namespace. Best-effort: silently skipped when the container lacks CAP_NET_ADMIN. Signed-off-by: Mete Fatih Cırıt --- docker-new/docker-entrypoint.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docker-new/docker-entrypoint.sh b/docker-new/docker-entrypoint.sh index b4b582b0f6..bdfba7d615 100644 --- a/docker-new/docker-entrypoint.sh +++ b/docker-new/docker-entrypoint.sh @@ -7,6 +7,15 @@ if [ -n "${HOST_UID}" ] && [ -n "${HOST_GID}" ]; then groupmod -g "${HOST_GID}" "${USERNAME}" >/dev/null 2>&1 || true fi +# Enable multicast on loopback so DDS discovery works when pinned to lo +ip link set lo multicast on >/dev/null 2>&1 || true + +# Apply system-wide network tuning for DDS (needs --privileged or --cap-add=NET_ADMIN) +# https://autowarefoundation.github.io/autoware-documentation/main/installation/additional-settings-for-developers/network-configuration/dds-settings/#tune-system-wide-network-settings +sysctl -w net.core.rmem_max=2147483647 >/dev/null 2>&1 || true +sysctl -w net.ipv4.ipfrag_time=3 >/dev/null 2>&1 || true +sysctl -w net.ipv4.ipfrag_high_thresh=134217728 >/dev/null 2>&1 || true + # shellcheck source=/dev/null source "/opt/ros/${ROS_DISTRO}/setup.bash"