コンテナレジストリ
Dockerコンテナイメージを保存・管理・配布するリポジトリサービス。Docker Hub・GitHub Container Registry・Amazon ECR・GCR・ACRなどがあり、CI/CDパイプラインの中核を担う。
コンテナレジストリとは?
コンテナレジストリは、Dockerコンテナイメージを保存・バージョン管理・配布するためのリポジトリサービスです。GitがソースコードをGitHubに保存するように、コンテナイメージはレジストリに保存します。
主なコンテナレジストリ
| サービス | 提供元 | 特徴 |
|---|---|---|
| Docker Hub | Docker | 最も有名・無料枠あり・Pull制限あり |
| GitHub Container Registry(GHCR) | GitHub | GitHubと統合・無料枠あり |
| Amazon ECR | AWS | AWSと完全統合・プライベートレジストリ |
| Google Container Registry(GCR) | GCP | GCPと統合 |
| Azure Container Registry(ACR) | Microsoft | Azureと統合 |
基本的な操作
# イメージをビルド
docker build -t my-app:v1.0 .
# タグを付けてレジストリにプッシュ(Docker Hub)
docker tag my-app:v1.0 username/my-app:v1.0
docker push username/my-app:v1.0
# レジストリからプル
docker pull username/my-app:v1.0
イメージのタグ管理
latest: 最新版(本番での使用は非推奨)- セマンティックバージョン:
v1.2.3(推奨) - Gitコミットハッシュ:
sha-abc1234(CI/CDでよく使われる)
セキュリティ機能
- イメージスキャン: プッシュ時にCVE脆弱性を自動検出(ECR・ACR等)
- アクセス制御: IAMやトークンによる認証・認可
- 署名: コンテナイメージの改ざん検知
まとめ
プライベートレジストリ(ECR・ACR等)はセキュリティと速度の面でパブリックレジストリより優れています。クラウドネイティブ開発では使用するクラウドと同じプロバイダーのレジストリを選ぶことで、認証や転送速度が最適化されます。
関連する用語 (DevOps)
全58件を見るCircleCI
クラウド型CI/CDプラットフォーム。.circleci/config.ymlにワークフローを定義し、GitHubやBitbucketと連携してパイプラインを実行。並列実行やキャッシュ機能で高速なCIを提供。
IT用語: カオスエンジニアリングとは|意図的に障害を起こして耐障害性を高める
本番環境に意図的な障害を注入しシステムの弱点を発見するカオスエンジニアリングの概念とChaos Monkeyを解説。
ELK Stack
Elasticsearch・Logstash・Kibanaの3ツールの組み合わせ。ログの収集(Logstash)・保存・検索(Elasticsearch)・可視化(Kibana)をセットで提供する定番ログ分析基盤。
IaC
Infrastructure as Code(コードとしてのインフラ)の略。インフラ構成をコードで記述・管理することで、自動化・バージョン管理・再現性を実現する考え方。TerraformやAnsibleが代表的ツール。
HPA
Horizontal Pod Autoscalerの略。CPU使用率やカスタムメトリクスに基づいてPod数を自動増減するKubernetesの機能。トラフィック増加時に自動でスケールアウトし、コスト最適化と可用性の両立が可能。
SRE
Site Reliability Engineering(サイト信頼性エンジニアリング)の略。Googleが提唱した、ソフトウェアエンジニアリングの手法を運用・インフラに適用するアプローチ。SLO・エラーバジェット・トイルの削減が核心概念。