Docker Desktop に内蔵された Kubernetes 機能を活用することで、開発用途のローカルクラスターを数分で立ち上げることが可能です。本稿では、Docker Desktop for Mac(v4.25+)および Docker Desktop for Windows(v4.25+)をベースに、最新の Kubernetes v1.28.x 向けに再構成したセットアップ手順を紹介します。設定の自動化と信頼性向上のため、公式リポジトリではなく、カスタマイズ済みのイメージ管理スクリプトと RBAC 構成を採用します。
macOS 向け構築手順
1. Docker Desktop のインストールと初期設定
Docker Desktop 公式サイトより最新版をダウンロード・インストール後、起動して「Settings」→「Features in development」タブで「Kubernetes」を有効化します。また、「Docker Engine」設定から以下のようにレジストリミラーを追加します:
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
2. 必要イメージの事前ロード
中国国内のネットワーク環境を想定し、Alibaba Cloud の公開リポジトリを活用しますが、本稿では GitHub Actions 互換の軽量スクリプト群を採用。以下のコマンドでリポジトリをクローンし、イメージをローカルに展開します:
git clone https://github.com/aliyun/ack-docker-desktop-helper
cd ack-docker-desktop-helper
chmod +x ./fetch-and-load.sh
./fetch-and-load.sh --k8s-version 1.28.9
実行後、Docker Desktop UI のステータスバーに「Kubernetes is running」が表示されるまで待機します。
3. クラスター検証とダッシュボード導入
ターミナルで以下のコマンドを実行し、ノード状態とコンポーネントの健全性を確認します:
kubectl get nodes -o wide
kubectl get componentstatuses
Kubernetes Dashboard v2.7.0 を Helm を用いてデプロイ(RBAC 設定込み):
helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/
helm repo update
helm install kdash kubernetes-dashboard/kubernetes-dashboard \
--namespace kubernetes-dashboard \
--create-namespace \
--set enableSkipLogin=true \
--set enableInsecureLogin=true
4. ダッシュボードへのアクセス
ローカルポート経由でアクセス可能にするため、ポートフォワードを起動:
kubectl port-forward -n kubernetes-dashboard service/kdash-dashboard 8443:443
ブラウザで https://localhost:8443 へアクセス。SSL 警告は無視して「Advanced」→「Proceed」を選択します。
5. 管理者トークンの生成(オプション)
より安全な認証が必要な場合は、以下 YAML を admin-token.yaml として保存・適用:
apiVersion: v1
kind: ServiceAccount
metadata:
name: cluster-admin-sa
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: cluster-admin-sa-binding
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: cluster-admin-sa
namespace: kube-system
適用後にトークンを取得:
kubectl -n kube-system create token cluster-admin-sa
出力された JWT トークンを Dashboard のログイン画面で使用します。
Windows 10 向け構築手順
前提条件
- Windows 10 Pro / Enterprise(v22H2 以降推奨)
- WSL2 が有効化済み(Docker Desktop 自動設定可)
- PowerShell(管理者権限で実行)
1. Docker Desktop の設定変更
「Settings」→「General」で「Use the WSL 2 based engine」を有効化。続いて「Resources」→「WSL Integration」で対象ディストリビューションを有効化します。
2. イメージロードスクリプトの実行
PowerShell(管理者)でリポジトリをクローンし、スクリプトを実行:
git clone https://github.com/aliyun/ack-docker-desktop-helper
cd ack-docker-desktop-helper
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
./fetch-and-load.ps1 -KubernetesVersion "1.28.9"
3. Kubernetes の有効化と検証
Docker Desktop の設定画面で Kubernetes を有効化し、「Apply & Restart」をクリック。完了後、PowerShell で以下を実行:
kubectl config current-context
kubectl get pods -A
すべてのシステム Pod が Running 状態になっていれば準備完了です。
4. ダッシュボードへの接続(Windows)
PowerShell でポートフォワードを開始:
kubectl port-forward -n kubernetes-dashboard service/kdash-dashboard 8443:443
Windows の既定ブラウザで https://localhost:8443 へアクセスします。