Red Hat Enterprise Linux 7には、Dockerコンテナーの実行に対する公式サポートが含まれており、Red Hatは一連の公式rhel Dockerイメージを提供しています。これらのイメージの興味深い機能は、コンテナー内で構成を実行する必要なく、ホストのRed Hat Networkサブスクリプションを介してパッケージをインストールできることです。
https://access.redhat.com/articles/881893#createimageを引用するには:
「現在のRed Hat Dockerリリースでは、Red HatからプルしたデフォルトのRHEL 7 Dockerイメージは、ホストシステムから利用可能なRHEL 7エンタイトルメントを利用できます。したがって、Dockerホストが適切にサブスクライブされており、リポジトリがコンテナーに必要なソフトウェアを取得する必要があり(かつDockerホストからインターネットにアクセスできる必要がある場合)、RHEL 7ソフトウェアリポジトリからパッケージをインストールできるはずです。」
私の懸念は、これが達成されるメカニズムがかなり不透明であることです。たとえば、rhel7.1イメージで新しいコンテナーを開始する場合yum install foo
、httpプロキシ環境変数を設定しなくても実行できます。このメカニズムを理解していないと、システム管理者は、ホストシステム、Dockerデーモン、および実行中のコンテナー間の未知の相互作用に翻弄される可能性があります。これは、ホストとコンテナの間の通常の分離が何らかの方法で損なわれていることも示唆しています(ただし、害のない方法で)。
要点を述べると、このサブスクリプションサポートはどのように実現されますか。また、サブスクリプションネットワークを介してRed Hatが提供するDockerデーモンのカスタムビルドに依存していますか?