7.2. OpenShift ではない Red Hat Quay のデプロイメントに Clair をセットアップ
OpenShift 上で稼働していない Red Hat Quay のデプロイメントでは、Clair のセキュリティースキャンを手動で設定することが可能です。すでに Clair V2 を実行している Red Hat Quay のデプロイメントは、以下の手順で Clair V4 をデプロイメントに追加することができます。
(フォールトトレラントが望ましい) Postgres データベースサーバーを導入します。なお、Clair は Postgres データベースに
uuid-ossp
エクステンションを追加する必要があります。Clair のconfig.yaml
で指定されたユーザーが、拡張機能を作成するのに必要な権限を持っている場合は、Clair 自身によって自動的に追加されます。そうでない場合は、Clair を起動する前に拡張機能を追加する必要があります。この拡張子がない場合は、Clair を起動しようとすると以下のエラーが表示されます。ERROR: Please load the "uuid-ossp" extension. (SQLSTATE 42501)
ERROR: Please load the "uuid-ossp" extension. (SQLSTATE 42501)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 特定のフォルダーで Clair 設定ファイルを作成します (例:
/etc/clairv4/config/config.yaml
)。config.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Clair の設定フォーマットの詳細は、アップストリームの Clair ドキュメント に記載されています。
コンテナーイメージ経由で Clair を実行し、作成したファイルから設定をマウントします。
podman run -p 8080:8080 -p 8089:8089 -e CLAIR_CONF=/clair/config.yaml -e CLAIR_MODE=combo -v /etc/clair4/config:/clair -d registry.redhat.io/quay/clair-rhel8:v3.6.8
$ podman run -p 8080:8080 -p 8089:8089 -e CLAIR_CONF=/clair/config.yaml -e CLAIR_MODE=combo -v /etc/clair4/config:/clair -d registry.redhat.io/quay/clair-rhel8:v3.6.8
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 新しい Clair V4 エンドポイントを使用するために Red Hat Quay を設定するには、前のセクションの残りの指示に従ってください。
この形で複数の Clair コンテナーを実行することも可能ですが、1 つのコンテナーを超えるデプロイメントシナリオでは、Kubernetes や OpenShift などのコンテナーオーケストレーターの使用を強く推奨します。