サイドカーコンテナ - CI/CD用語集の定義
サイドカーコンテナは、同じKubernetes pod内でメインのアプリケーションコンテナと並んで動作する補助コンテナで、そのネットワークと(必要に応じて)ボリュームを共有します。一般的なサイドカーは、トラフィックをプロキシしたり、ログを送信したり、configを同期したりします。
仕組み
pod内のコンテナはネットワーク名前空間を共有するため、サイドカーはlocalhost経由でメインコンテナに到達できます。サービスメッシュのプロキシ(Envoy)やログ送信ツールが典型的なサイドカーです。Kubernetes 1.28以降は、restartPolicy: Alwaysを指定したinitContainersによってネイティブなサイドカーコンテナをサポートします。
CIにおける類似物
GitHub Actionsのservice containerはCIで同様の役割を果たします。PostgresやRedisのコンテナがjobの隣で動作し、テストが実際の依存関係に到達できるようにします。
関連ガイド
Init Container - CI/CD Glossary DefinitionAn init container runs to completion before a pod’s main containers start, preparing state - fetching config,…
Pod - CI/CD Glossary DefinitionPod: A pod is the smallest deployable unit in Kubernetes: one or more containers that share a network namespa…
Service Mesh - CI/CD Glossary DefinitionA service mesh is a layer of sidecar proxies that handles service-to-service traffic - routing, retries, mTLS…