15.8.6. 追加機能の提供
場合によっては、Docker が追加設定なしの機能として提供していない機能がイメージで必要になることがあります。この場合、Pod 仕様で追加機能を要求することができ、これは SCC に対して検証されます。
これによりイメージを昇格された機能を使って実行できますが、これは必要な場合にのみ実行する必要があります。追加機能を有効にするためにデフォルトの restricted SCC を編集することはできません。
非 root ユーザーによって使用される場合、setcap
コマンドを使用して、追加機能を要求するファイルに該当する機能が付与されていることを確認する必要もあります。たとえば、イメージの Dockerfile では、以下のようになります。
setcap cap_net_raw,cap_net_admin+p /usr/bin/ping
さらに機能が Docker のデフォルトとして提供されている場合には、これを要求するために Pod 仕様を変更する必要はありません。たとえば、NET_RAW
がデフォルトで指定されており、機能がすでに ping
で設定されている場合、ping
を実行するのに特別な手順は必要ありません。
追加機能を提供するには、以下を実行します。
- 新規 SCC を作成します。
-
allowedCapabilities
フィールドを使用して許可された機能を追加します。 -
Pod の作成時に、
securityContext.capabilities.add
フィールドで機能を要求します。