Oxcart ダウンロード
メニュー

2026年のMacで使うKubernetes:kubectl、k9s、ローカルクラスター

Appleシリコン MacでのKubernetes作業は主に3つに分かれます。Macのkubectlとk9sからクラウドや共有クラスターへ接続すること、そのクラスター向けのイメージをビルドすること、アプリの依存サービスをローカルで実行することです。Oxcartはこの開発サイクルを速くします。イメージをビルドし、アプリと依存サービスを動かし、ローカルのkwok APIサーバーでマニフェストをテストしてからクラスターに適用できます。

更新日

Macに合ったワークフロー

ノートパソコン上のKubernetesクラスターは、多くの場合、実際には別の場所で動いている環境のコピーです。プラットフォームやアプリの開発では、そのコピーより、コンテナ自体と通信先のサービスから素早くフィードバックを得て、ターミナルで実際のクラスターを開けることが大切な場合があります。Appleシリコン Macでは、これを4つの作業に分けられます。

MacでのKubernetes作業と実行場所
作業ツールOxcartでの使い方
クラスターの確認と操作kubectl, k9sMacネイティブのツール。任意のkubeconfigコンテキストへ接続
クラスター用イメージをビルドdocker buildx buildamd64とarm64のイメージをまとめてビルド
アプリと依存サービスを実行docker composeヘルスチェック、up --wait、公開ポートを使ってスタックを起動
APIサーバーでマニフェストをテストkwok実際のコントロールプレーンとシミュレーションのノード・Podでマニフェストを確認

kubectlとk9sでクラスターに接続

kubectlとk9sは同じkubeconfigを読むため、一方で接続できるクラスターはもう一方でも閲覧できます。クラウドCLIがコンテキストを書き込んでくれます。aws eks update-kubeconfig、az aks get-credentials、gcloud container clusters get-credentialsがそれぞれコンテキストを追加します。

kubectl config get-contexts          # every cluster in your kubeconfig
kubectl config use-context my-eks    # switch the current context
kubectl get pods -A                  # works against the current context
k9s                                  # the same context, in a terminal UI
k9s --context my-aks --readonly      # another context, read-only

k9sのインストールページの説明どおり、HomebrewまたはMacPortsでインストールします。環境ごとにkubeconfigファイルを分け、本番環境に触れたくないときはKUBECONFIG=~/.kube/staging k9sで使用するファイルを指定しましょう。

クラスター用イメージをビルド

多くのクラスターはamd64ノードで動作し、Macはarm64です。OxcartのBuildxはデフォルトビルダーで、同じDockerfileから両方をビルドできます。

docker buildx ls                     # default builder: linux/amd64, linux/arm64
docker buildx build --platform linux/amd64,linux/arm64 -t myapp:dev .
docker run --rm --platform linux/amd64 myapp:dev   # runs through Rosetta
docker run --rm --platform linux/arm64 myapp:dev   # runs natively

ローカルで自作したamd64専用イメージを実行する際は、--platform linux/amd64を指定してください。デプロイ時はプラットフォームごとにタグをプッシュするか、各ノードに合うイメージを選ぶ複数アーキテクチャのマニフェストをCIで公開します。

docker buildx build --platform linux/amd64 --load -t registry.example.com/myapp:1.4.0-amd64 .
docker push registry.example.com/myapp:1.4.0-amd64

ビルドは高速です。小さなローカルコンテキストでのOxcartの測定値は、キャッシュなしで341 ms、キャッシュありで121 ms。テストした3つのランタイムで最速でした。docker loginはレジストリのパスワードをmacOSのキーチェーンに保存します。

Composeでアプリの依存サービスを実行

変更中のサービスがリモートクラスターと通信していても、データベース、キャッシュ、キューはMacで動かせます。ヘルスチェックとdepends_on: condition: service_healthyを指定したcompose.yamlは、docker compose up -d --waitで起動し、全サービスが正常になるまで戻りません。完全な例はAppleシリコンのDocker Composeをご覧ください。コンテナの起動は、テストのたびに環境を破棄できるほど高速です。docker run --rmは42 ms、20コンテナの停止と削除は77 msでした。

kwokでMac上に実際のKubernetes APIを

kwok(Kubernetes WithOut Kubelet)は実際のコントロールプレーンのコンポーネントをコンテナで起動し、ノードとPodをシミュレートします。Oxcartではkwokctlがetcd、kube-apiserver、kube-scheduler、kube-controller-manager(v1.36.1)を、イメージの取得を含めて約15秒で起動しました。Macのkubectlとk9sからも接続できました。

kwokctl create cluster --name dev --runtime docker
kwokctl scale node --replicas 2 --name dev
kubectl apply -f deploy.yaml
kubectl rollout status deploy/web     # "successfully rolled out"
kubectl get pods -o wide              # 3/3 Running on simulated nodes
k9s                                   # browse it like any cluster
kwokctl delete cluster --name dev

マニフェストを適用できるか、RBACが意図した権限を与えるか、コントローラーやOperatorがAPIと正しく通信するかを確認できます。共有クラスターに触れずにk9sを学ぶのにも使えます。Deploymentのコンテナは実際には動きません。PodはAPIサーバー内のレコードで、kwokがRunningと表示します。

クラスターを動かす場所を選ぶ

Macで素早くフィードバックを得ながら、チームに合うクラスターを使いましょう。共有開発クラスターなら、全員が同じコントローラー、ポリシー、クラウド連携を使えます。その環境に接続できない状態で実際のPodを動かす必要がある場合は、ローカルクラスターが役立ちます。

Oxcartは、Linux内で昇格した権限が必要なワークロード向けに特権コンテナをサポートします。完全なKubernetesクラスターの動作には、クラスターツールのネットワークとランタイム設定も関係します。クラスターを内蔵するデスクトップアプリについてはMacのコンテナアプリ比較をご覧ください。日々のアプリ開発では、上記のCompose、Buildx、kwokのワークフローでローカルの反復を速く進められます。

Macからクラウドクラスターを使う

よくある質問

OxcartはKubernetesのワークフローでどう使いますか?

Oxcartでイメージをビルドし、アプリと依存サービスをローカルで実行し、kwokのローカルAPIサーバーでマニフェストをテストできます。特権コンテナはプラットフォームの標準機能です。共有・クラウドクラスターにはMacのkubectlとk9sから接続します。Oxcart自体にKubernetesクラスターは同梱されていません。

Oxcartで使えるローカルKubernetes APIはありますか?

はい。kwokは実際のKubernetesコントロールプレーン(etcd、kube-apiserver、kube-scheduler、kube-controller-manager。テストではv1.36)をOxcartのコンテナで動かし、Macのkubectlとk9sから接続できます。ノードとPodはシミュレーションなので、マニフェスト、RBAC、API動作のテスト用であり、アプリのコンテナを実行するものではありません。

kubectlとk9sはAppleシリコン Macで動きますか?

はい。どちらもmacOSネイティブのコマンドラインツールです。kubeconfigを使うため、EKS、AKS、GKE、職場のクラスター、ローカルAPIサーバーなど、そこに指定された任意のクラスターに接続できます。k9sのドキュメントにはHomebrewとMacPortsでのインストール方法があります。

Appleシリコン Macでamd64のKubernetesクラスター向けイメージをビルドするには?

Buildxで--platform linux/amd64を指定します。両方なら--platform linux/amd64,linux/arm64を使います。Oxcartのデフォルトビルダーで複数プラットフォームのビルドが完了し、両アーキテクチャをローカル実行できます。Oxcartから複数プラットフォームイメージをプッシュする機能には対応していないため、プラットフォームごとにタグを送るか、CIで複数アーキテクチャのマニフェストを公開してください。

Macで完全なローカルKubernetesクラスターを動かすには?

単一ノードのクラスターを内蔵するMac向けコンテナアプリがいくつかあります。比較ページに出典付きでまとめています。一方、多くのチームは共有・クラウドクラスターを使い、アプリの依存サービスだけをローカルで動かします。このガイドはそのワークフローを扱っています。

k9sにメトリクスサーバーは必要ですか?

なくても接続できます。クラスターにメトリクスAPIがないと警告を記録し、CPUとメモリの列が空になります。kwokのテストでは、その警告とともに「Kubernetes connectivity OK」と表示されました。

出典と測定方法

  • ローカルAPIの例:Oxcart 0.1.2、Mac17,14、macOS 27.2、2026-10-10。kwokctl v0.8.0、k9s v0.51.0、kubectl v1.33.9。
  • kwok:https://kwok.sigs.k8s.io/。k9s:https://k9scli.io/ および https://k9scli.io/topics/install/。kind:https://kind.sigs.k8s.io/docs/user/known-issues/。k3d:https://k3d.io/stable/。minikubeドライバー:https://minikube.sigs.k8s.io/docs/drivers/。2026-10-10に確認。
  • ビルドとコンテナの速度:Oxcart 0.1.2、2026-10-10、Apple M5 Max、8 CPU、12 GiB、5回の測定の中央値。ほかのランタイムは同日のそれ以前に、同じMacと測定環境でdocker 29.4クライアントを使って測定しました。

自分のプロジェクトで Oxcart を試す

60日間無料。その後は1ユーザー・1メジャーバージョンあたり $20。サブスクリプションではありません。

Apple silicon · macOS 26 以降

次に読む

リリースノート

Oxcart 0.1.4

最新リリース

ライセンス機能と各種改善。

  • メールの安全なリンクによるライセンスの有効化。
  • SettingsからライセンスとMacを管理。
  • ライセンスのオフライン検証。
  • パフォーマンス改善、UIの調整、不具合修正。

macOS 26.0以降が必要です

Oxcart 0.1.3

アイドル時のメモリ回収。

  • コンテナが実行されていないときに、VMのメモリを回収。
  • コンテナ、イメージ、ボリューム、ネットワークを保持。

macOS 26.0以降が必要です

Oxcart 0.1.2

コマンドラインツールの統合。

  • Oxcart付属のDockerツールと、すでにインストールされているDockerツールを切り替え。
  • UIの調整。

macOS 26.0以降が必要です

Oxcart 0.1.1

同梱のDockerツールとエージェントの制御。

  • Docker CLI 29.9、Compose 5.6、Buildx 0.38を同梱。
  • Dockerコンテキストとの連携と、キーチェーンでの認証情報の安全な保管。
  • MCPエージェントの接続と、エージェントごとの権限設定・ブロック。

macOS 26.0以降が必要です

Oxcart 0.1.0

Appleシリコン向けのDocker互換コンテナ。

  • Docker CLI、Compose、Buildxとの互換性。
  • 実行環境のコンポーネントを同梱し、オフラインでセットアップ可能。
  • プロジェクトとGitブランチごとにポートを整理。
  • デフォルトで読み取り専用のMCP連携。
  • 検証済みの自動アップデート。

macOS 26.0以降が必要です