DockerのRootlessモードを調べている中で、unshare
というコマンドを見つけました。
Linuxカーネルの機能である名前空間の分離が出来るコマンドです。
今回は unshare
コマンドを使ってユーザー名前空間の分離を試してみました。
ホストOSとコンテナ間でのUID/GIDマッピング
DockerのRootlessモード使ってますか? RootlessモードではDockerデーモンをroot以外のユーザーで動作させることができるので、セキュリティ的によいとされています。 Rootlessな環境でコンテナを動かすと、Linuxカーネルのユーザー名前空間という機能を利用して、コンテナ内のUID/GIDをいい感じに変換します。 このユーザー名前空間の仕組みについて調べたことをまとめておきたいと思います。
[Read More]