[docker-in-docker] `docker-init.sh` prints `grep: /proc/modules: No such file or directory` on kernels without loadable-module support

未關閉 適合新手
#1,770 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

維護者通常 3 天內回覆

還沒有人認領這個 Issue。

評估

難度
1/5
預估耗時
1 小時以內
新手友好度
88/100
Issue 類型
缺陷
描述清晰度
描述清楚
活躍度
活躍
技術堆疊
docker, shell
領域
devops

研究方向

檢查位於 src/docker-in-docker/install.sh;閱讀 issue 中描述的 iptablesSwitchAtRuntime 後端選擇邏輯。在不支援可載入模組的核心上重現問題,並確認啟動時會印出缺少 /proc/modules 的錯誤。該錯誤被隱藏且回退至 iptables-nft 仍然正常運作時,即為完成。

由索引模型根據 Issue 內容生成。

描述

With iptablesSwitchAtRuntime at its default of true, docker-init.sh prints an error on every start when the kernel is built without loadable-module support, because /proc/modules doesn't exist there.

The check is in src/docker-in-docker/install.sh:

if type iptables-legacy > /dev/null 2>&1 \
   && { grep -qE '^(ip_tables)\b' /proc/modules \
        || [ -d /sys/module/ip_tables ]; } \

grep -q doesn't suppress the error for a missing file, so the message goes to stderr:

grep: /proc/modules: No such file or directory

The backend selection still works: the grep fails, the /sys/module check runs next, and the script falls through to iptables-nft.
So this is only noise, but it looks like a failure to anyone reading container startup output.

Reproduction: feature version 4.1.3, in a microsandbox (msb 0.7.13) guest on kernel 6.12.113, built without loadable modules.
Any container or VM on such a kernel should behave the same.

Suggested fix: silence that one grep, leaving the rest of the logic as it is:

   && { grep -qE '^(ip_tables)\b' /proc/modules 2>/dev/null \

Related: #1709 concerns the same iptablesSwitchAtRuntime check.

主要語言
Shell
星號
1.6k
分支
626
平均合併
4 天 10 小時
30 天內合併 PR
7

環境準備

在 Codespaces 中開啟

在瀏覽器裡用你自己的 GitHub 帳號啟動這個專案的開發容器。

  • 沒有 Dockerfile 或 Docker Compose 檔案
  • 沒有 Pull Request 範本
  • 閱讀貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

devcontainers/features 的其他 Issue

查看 devcontainers/features 的全部 Issue

相似的 Issue

更多 Shell/Bash Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。