Kush's Wiki
コンテナ
#
Cloud Native
アプリケーションの基本要素
OOP
と比較すると、コンテナイメージはクラス定義でコンテナはインスタンスのような関係性
Container Network Interface
CNI #Cloud Native #Network LinuxおよびWindowsコンテナにおける、ネットワークインターフェースを構成するプラグインを作成するための仕様とライブラリ、およびサポートされているプラグイン CNCF project https://www.cni.dev/
サービスディスカバリ
アプリケーションサービスを公開する際、#Cloud Nativeなコンテナアプリケーションをステートレスに扱うようなケースで、アプリケーションの場所(IPアドレス)を容易に提供するためのパターン
Kubernetes
Container Storage Interface
CSI コンテナオーケストラレーション(主にKubernetes)でのコンテナ化されたワークロードから任意のストレージシステムを使用可能にするための仕様とその実体であるProtocol Buffers(gRPC通信前提)定義を提供する container-storage-interface/spec
Kubernetesパターン 第2版
DevGuard
#Security OWASP Incubating Project の開発者向け統合セキュリティプラットフォーム。AGPL-3.0、Go + PostgreSQL 実装 シークレットスキャン / SAST / SCA / IaC / コンテナスキャン / ライセンスチェックを単一 CLI に統合し、サプライチェーン攻撃 対策まで含めて開発ワークフローに組み込む Trivy など標準準拠スキャナの出力取り込み、依存パッケージの Dependency Firewall(npm / Python など)、GitHub / GitLab / Jira との双方向同期を備える オープン標準(SBOM / VEX / SARIF / SLSA / in-toto)を中核に据える https://devguard.org/ https://github.com/l3montree-dev/devguard
Kubernetes/
Immutable Configuration
Kubernetesの設定管理において、設定ファイルを隠蔽する専用のコンテナを用意し、Initコンテナと emptyDir を組み合わせることでアプリケーションコンテナに設定ファイルをロードさせるパターン ConfigMapと異なり、設定ファイルのコンテナイメージバージョン管理によってイミュータブルに扱うことができる
Kubernetes/
Initコンテナ
#Cloud Native Podと一緒に定義可能な初期化を行うコンテナ サイドカーでも同挙動は実現可能だが、ただ一度のみ実行されるのでリソースを調整しやすい Init Containers | Kubernetes Kubernetes
Kubernetes/
コンテナライフサイクルフック
Kubernetes上のコンテナのライフサイクルとして開始時(ENTRYPOINT)と終了時にフックを命令できる機能 コンテナライフサイクルフック | Kubernetes
Kubernetes/
Liveness Probe
Probeに失敗するとコンテナを再起動する livenessProbeをいつ使うべきか? HTTPリクエストによるLiveness Probeを定義する Kubernetes
Kubernetes/
Probe
#Continuous Delivery Pod上で定期的に実行されるコンテナの診断、ヘルスチェック チェックの方法として以下の4つがある gRPC HTTP TCP Socket Exec 任意のコマンドを実行し、成功の返り値0を期待する Probeには戦略を示すようないくつかの種類が存在する Podのライフサイクル | Kubernetes Kubernetes
Kubernetes/
Volume
Kubernetes/
Downward API
Podのメタデータを環境変数を通じてコンテナに渡すようなケースで利用できるAPI Downward API | Kubernetes Kubernetes
Kubernetes/
Pod
Quay.io
#Cloud Native #Security #Continuous Integration Red Hatが提供するコンテナイメージレジストリサービス コンテナイメージの保存・配布を行い、SAST脆弱性スキャナーClairによる自動セキュリティスキャンを統合している ホスト型のQuay.ioのほか、オンプレミス向けRed Hat Quay(Operatorとしても提供)とOSS版Project Quayの3形態がある Docker Hubの代替として、エンタープライズ向けのアクセス制御やイメージ署名機能を備える https://quay.io/ https://www.projectquay.io/
Google Cloud/
Artifact Registry
#Cloud Native #Continuous Integration Google Cloudが提供するフルマネージドなコンテナイメージおよび言語パッケージのレジストリサービス Docker/OCIイメージに加え、Maven・npm・Python・Go・apt・yum・Helmなど複数の形式に対応する 旧サービスのContainer Registryの後継として位置付けられている Artifact Registry のドキュメント | Google Cloud
Argo CD Image Updater
#Cloud Native #Continuous Delivery Argo CDが管理するKubernetesワークロードのコンテナイメージを、レジストリを監視して自動更新する argoproj-labs のツール(Apache-2.0)。公式は "under active development" として critical な本番ワークロードでの利用をまだ推奨していない 更新するイメージと更新戦略(semver / newest-build / alphabetical / digest)は ImageUpdater CRD で指定する argocd — クラスタ上の Application リソースのパラメータを直接書き換える。リソースを作り直すと消える git — .argocd-source-<appName>.yaml 等をリポジトリにコミットして永続化する。GitOpsで運用するならこちら git + pullRequest — 直接 push せず head branch から PR / MR を開く。protected branch やレビューを挟みたい場合に使い、SCM API を叩くため PAT か GitHub App が必要 https://argocd-image-updater.readthedocs.io/en/stable/
Pod
#Cloud Nativeの世界において、1つまたは複数のコンテナを保持する最小ユニット 主にKubernetes Podを指す
Trivy
#Security #Cloud Native #Continuous Integration #Continuous Delivery Aqua Securityが開発するオープンソースの脆弱性・設定ミス・シークレットスキャナー。コンテナイメージ、Kubernetes、IaC、gitリポジトリを対象とする SASTツールの一種としてDevSecOpsのシフトレフトセキュリティを担い、CIパイプラインに統合できる DockerfileやTerraformの設定ミス検出、シークレット検出、SBOM生成にも対応する --format sarif で SARIF 出力に対応し GitHub Code Scanning に取り込める https://trivy.dev/ https://github.com/aquasecurity/trivy
Testcontainers
サイドカー
#Cloud Native 1つのPod内で複数のコンテナを定義し、メインアプリケーションコンテナとそれを拡張するSidecarコンテナのような関係性を持たせるパターン
Docker
Aikido Security/
Platform
#Security "Unified Security Platform" を標榜する商用 SaaS(カテゴリは ASPM / Application Security Posture Management)。10 種類超のセキュリティスキャンを単一 UI に集約する スキャン対象は SAST / SCA / DAST / シークレット / IaC / コンテナ / CSPM など。Terraform / CloudFormation / Kubernetes マニフェストの設定ミス検出にも対応 AutoFix による修正 PR の自動生成や、Aikido Intel による依存パッケージのマルウェア検出まで検出後の対応も持つ https://www.aikido.dev/
Aikido Security/
Images
#Security #Cloud Native CRITICAL / HIGH の脆弱性を持つライブラリを patch 済みに差し替えた "zero-CVE base images" のレジストリ。ディストリのメジャーバージョンを上げず backport で修正するため drop-in replacement として使える FROM debian:bookworm を FROM docker.aikido.io/<token>/debian:bookworm に書き換えるだけで適用でき、Platform の AutoFix for Containers が Dockerfile の書き換え PR を生成する OS レベルの CVE は patch 作成 SLA 付き、アプリレベルのパッケージは best-effort。SBOM / VEX / SLSA provenance を添付し、EOL 後のコンテナイメージにも修正を提供する https://www.aikido.dev/cloud/hardened-images