【2026年版】Kubernetesの始め方 — コンテナオーケストレーション入門ガイド
- KubernetesとDockerの違いを理解する
- Pod・Deployment・Serviceの概念
- kubectlコマンドの基本操作
- minikubeでのローカル環境構築
kubectlコマンド早見表
# ローカル環境構築(minikube)
brew install minikube # macOS
minikube start # クラスター起動
minikube status # 状態確認
minikube stop # 停止
# 基本操作
kubectl get pods # Pod一覧
kubectl get deployments # Deployment一覧
kubectl get services # Service一覧
kubectl get all # 全リソース一覧
# デプロイと管理
kubectl apply -f manifest.yaml # マニフェスト適用
kubectl delete -f manifest.yaml # 削除
kubectl describe pod Pod名 # 詳細確認
kubectl logs Pod名 # ログ確認
kubectl exec -it Pod名-- bash # コンテナにシェルで入る
Deploymentマニフェストの基本
# deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
spec:
replicas: 3 # Pod数
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-app
image: nginx:latest
ports:
- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
name: my-app-service
spec:
selector:
app: my-app
ports:
- port: 80
targetPort: 80
type: LoadBalancer
よくある詰まりポイント
Q: PodのStatusが CrashLoopBackOff になる
→ kubectl logs Pod名 でログを確認してください。コンテナのプロセスが即時終了している場合(デーモンがなくシェルだけなど)や、環境変数・設定ファイルの不備が原因のことが多いです。
Q: ImagePullBackOff になる
→ イメージ名またはタグが間違っているか、プライベートレジストリに認証が必要な場合です。kubectl describe pod Pod名 で詳細を確認してください。
Q: minikubeとDockerの違いは? → Dockerは単一ホストでコンテナを動かすツールで、Kubernetesは複数ホスト(クラスター)でコンテナを管理・調整するツールです。minikubeはKubernetesをローカルで動かすためのシミュレーターです。
Kubernetesってよく聞くけど、そもそも何をするものなの?
なるほど!でもKubernetesの中にはいろんな用語があって混乱しちゃう…。PodとかServiceとか、最低限どれを覚えればいいの?
ローカルで試してみたいんだけど、どうやって環境を作ればいいの?
一番手軽なのはDocker Desktopの設定画面でKubernetesを有効にする方法だよ。もう少し本格的にやるならminikubeやkindというツールがおすすめ。minikubeは仮想マシン上にクラスタを作ってくれるし、kindはDockerコンテナの中にクラスタを作るから軽量なんだ。どれもコマンド1つで始められるよ。
環境ができたら、まず何をすればいいの?
kubectlというコマンドラインツールを使うよ。まず「kubectl get nodes」でノードが動いているか確認して、「kubectl run my-app --image=nginx」で最初のPodを起動してみよう。「kubectl get pods」で状態を見て、「kubectl describe pod my-app」で詳細を確認する。この流れが基本操作だね。
YAMLファイルで設定を書くって聞いたけど、難しくないの?
Kubernetesって勝手にコンテナを増やしたり復活させたりするって本当?
学ぶ順番としてはどう進めていくのがいいの?
もっと上級のテーマだと、どんなものがあるの?