Skaffoldとは?
すかっふぉるど
Skaffoldとは、Kubernetesアプリケーションの開発・ビルド・デプロイを自動化し、継続的なローカル開発ループを実現するオープンソースのCLIツールです。
Skaffoldは、GoogleがオープンソースとしてリリースしたKubernetes向けの開発ワークフロー自動化ツールです。ソースコードの変更を検知して自動的にコンテナイメージのビルド・プッシュ・Kubernetesクラスターへのデプロイまでを連続して実行する「ホットリロード」的な開発体験を提供します。
主な機能は以下のとおりです。
- 継続的ビルド&デプロイ:ファイル変更を監視し、変更箇所のみを差分ビルドして即座にクラスターへ反映
- 複数ビルダー対応:Docker・Kaniko・Buildpacksなど様々なイメージビルド手段をサポート
- 複数デプロイ手段:kubectl・Helm・Kustomizeとの統合が可能
- プロファイル機能:開発・ステージング・本番など環境ごとに異なる設定を切り替えて利用
- テスト統合:コンテナ構造テストやカスタムテストをパイプラインに組み込める
設定は skaffold.yaml という一つのファイルにまとめて記述し、チームで共有できます。`skaffold dev` コマンドを実行するだけで自動検知ループが始まり、Kubernetes上でのアプリ開発速度を大幅に向上させます。
マイクロサービス構成や複数コンテナを扱う複雑なKubernetes環境において、手動でのイメージビルド・プッシュ・apply作業の繰り返しを排除できる点が最大の価値です。
使い方・例文
Kubernetesクラスター上で動くWebアプリを開発する際、`skaffold dev` を起動しておくとコードを保存するたびに自動でビルド・デプロイが走り、ブラウザで変更を即確認できます。
この用語をシェア
最終更新: