☆GCP☆GCR☆脆弱性スキャン☆技術/サービス紹介
2020/02/19
こんにちは。DOUZO ブログ担当です。
ブログでは業務で触れた技術やサービスをざっくり紹介しています。
今回は GCR の脆弱性スキャン ( link ) ついて紹介してみたいと思います。
GCR は GCP で利用できるコンテナリポジトリサービスです。
脆弱性スキャンは beta の機能となりますが、docker image の脆弱性検知に利用できます。
Binary Authorization とオープンソースを組み合わせることでスキャン結果に応じてデプロイ可否を自動で判断させるよう CI/CD を組むことは可能( 1 年ほど前に試みたのですが動作させることができず諦めた経緯があります・・)なようなのですが( link )、Develop/Staging 環境で以下のような構成を取ることで Production 環境へのデプロイを避ける形を取りました。
docker image ビルド ---> GCR へ push ---> GKE へデプロイ
└─> 脆弱性スキャン ---> pub/sub ---> Cloud Function ---> slack 通知
GCR の脆弱性スキャン機能を有効にすることで、自動で docker image のスキャンが実行され、結果が pub/sub へ通知されます。この情報から Cloud Function で結果を確認し脆弱性が検知された場合は slack で関係者へ警告を出します。警告が通知されたら Develop/Staging 環境で Dockerfile を更新し脆弱性に対応する運用にしています。
Cloud Function で利用する関数にはドキュメント( link )や github ( link ) を参考にしつつ python で記述しました。
興味のある方は利用してみてください!
弊社では gcp 等のクラウドサービスを扱う案件が多数あります。
DOUZO の営業担当者は全員フリーランスエンジニアの経験がございます。
どうぞお気軽にご相談ください!