ドッカーにソフトウェアを入れようとしています。chown /sys/class/net/eth0
これは私が制御できない独自のコードなので、Docker内で動作させる必要があります。
実行すると、次のエラーログが表示されます。
{"error":"MySQL: Connection refused"}chown: changing ownership of ‘/sys/class/net/eth0’: Read-only file system
docker書き込みアクセスを許可せずにこの問題を解決したいと思います。 dockerが提供する隔離を維持したいと思います。
答え1
--network host
標準ネットワーク監視ソフトウェアを実行するには、コマンドにこのオプションを使用する必要がありますdocker run
。これにより、同じネットワークデバイスをすべて表示できます。
実際にパケットをキャプチャする必要がある場合は、Dockerコンテナに追加の「機能」も付与する必要があります。それ以外の場合、権限拒否エラーが発生します。
答え2
Dockerfileで権限を許可する必要はありません。 docker runコマンドを追加するだけです。--ボリューム/sys:/sys:roイメージを実行すると