Node 2.8: xray бинарник слушает 443, но через ноду порт не поднимается (rw-core)

Панель и нода 2.8.0, Xray 26.6.27. Инбаунд VLESS + XHTTP + TLS (реальный Let’s Encrypt серт), порт 443, security tls, network xhttp.

Проблема: порт 443 нестабильно биндится.

Что проверено:

  • Конфиг профиля валидный (панель пишет “Xray config is valid”).
  • Если запустить xray этим же конфигом ВРУЧНУЮ внутри контейнера (docker exec remnanode xray run -c /tmp/test.json) — Xray стартует и слушает: “listening TCP for XHTTP on 0.0.0.0:443”, “Xray 26.6.27 started”. То есть сам конфиг и серты рабочие.
  • Но когда конфиг подаёт rw-core (штатно через панель) — ss -tlnp | grep 443 то показывает xray на 0.0.0.0:443, то пусто. После docker compose down/up иногда поднимается, иногда нет, с одним и тем же конфигом.
  • Была ошибка “bind: permission denied” на 443 — решил добавив в docker-compose cap_add NET_ADMIN + NET_BIND_SERVICE + sysctls net.ipv4.ip_unprivileged_port_start=0. После этого один раз поднялось, был рабочий TLS-хендшейк (curl доходит до Finished, TLS 1.3) и клиент (Happ) показал пинг 234 мс. Но при следующих перезапусках 443 снова не биндится.
  • В логах ноды видно “XRay Core is up and running” + “VLESS-XHTTP-TLS · 1 users”, но порт при этом не слушается. Также в логах “Attempt to start XTLS took … (IP: <IP панели>)”.

network_mode: host, cap_add: NET_ADMIN, NET_BIND_SERVICE.

Вопрос: почему rw-core нестабильно поднимает Xray на 443 при валидном конфиге? Что не так с запуском ядра через ноду?