OrbStack Docker macOS コンテナ

OrbStack入門 — Docker Desktopより軽量・高速なmacOSコンテナ環境

2026-03-15
目次

macOSでコンテナ環境といえばDocker Desktopが定番ですが、起動の遅さやリソース消費が気になる場面がありました。

この記事では、Docker Desktopの代替として注目されているOrbStackについて、概要からインストール、実際にコンテナを動かすところまでをまとめます。

OrbStackとは

OrbStackは、macOS向けの軽量・高速なコンテナ実行環境です。ネイティブのSwiftアプリとして実装されています。

macOSでDockerコンテナを動かすには、LinuxカーネルをVM上で動かす必要があります。Docker Desktopも内部的にはLinux VMを立ち上げていますが、OrbStackはこのVM層を独自に最適化し、起動の速さとリソース効率を改善しています。

  • 高速起動: 約2秒で起動
  • 低リソース消費: バックグラウンドCPU使用率がApple Siliconで0.1%未満
  • 動的メモリ管理: 必要に応じてメモリを確保・解放
  • 最適化されたファイル共有: VirtioFSによる高速なファイルマウント

Docker CLIとの互換性

OrbStackはDocker Engineを内蔵した環境を提供しています。既存のdockerコマンドやdocker composeコマンドがそのまま使えます。PodmanやLXCのような別系統のツールではなく、Dockerと互換性のある「より軽量な実行基盤」という位置づけです。

OrbStackをインストールすると、dockerdocker composedocker buildxなどのCLIツールも自動的にインストールされます。

OrbStackとDocker Desktopの違い

OrbStackとDocker Desktopの主な違いを整理します。

パフォーマンスとリソース消費の比較

項目 OrbStack Docker Desktop
起動速度 約2秒 数十秒〜
バックグラウンドCPU 0.1%未満(Apple Silicon) 比較的高い
メモリ管理 動的(必要に応じて確保・解放) 固定割り当て
初期ディスク使用量 10MB未満 数GB
アプリ実装 ネイティブSwift Electron
ネットワーク 高速(独自スタック) 標準

これだけの差が生まれる背景には、アーキテクチャの設計思想の違いがあると推測されます。OrbStackの公式ドキュメントや公開情報から読み取れるポイントを整理します。

  • VM層の最適化: Docker DesktopはLinuxkitベースの汎用VMをmacOS/Windows/Linuxで共通利用するのに対し、OrbStackはApple SiliconとmacOS専用に最適化された軽量VMを採用。WSL2と同様の共有カーネルアプローチで余分なオーバーヘッドを排除している
  • ファイルシステム: Docker Desktopが標準的なVirtioFSやgRPC-FUSEを使用するのに対し、OrbStackはVirtioFSを基盤にカスタム動的キャッシングを独自実装。公式によればネイティブmacOSの75〜95%のファイルI/O性能を実現している
  • x86エミュレーション: Docker DesktopがQEMUベースのエミュレーションを使うのに対し、OrbStackはApple Silicon上でRosettaを利用。macOSネイティブのエミュレーションエンジンにより高速に動作する
  • コンポーネント設計: Docker DesktopがElectron(Chromium + Node.js)と汎用コンポーネントの組み合わせであるのに対し、OrbStackはSwift・Go・Rust・Cで目的別にゼロから構築。統合設計により余分な処理レイヤーを削減している

つまり、Docker Desktopが「マルチプラットフォーム対応の汎用設計」であるのに対し、OrbStackは「macOS専用に全レイヤーを最適化した専用設計」であることが、パフォーマンス差の主な要因と考えられます。

機能の違い

機能 OrbStack Docker Desktop
Docker Engine 対応 対応
Docker Compose 対応 対応
Kubernetes 対応 対応
Linux VM 対応(15種類のディストロ) 非対応
自動ドメイン名 対応 非対応
IPv6 対応 対応(4.42以降)
VS Code連携 対応 対応
Extensions 非対応 対応
Docker Scout 非対応 対応
対応OS macOSのみ macOS / Windows / Linux

ライセンスと料金の比較

プラン OrbStack Docker Desktop
個人利用(非商用) 無料 無料
商用利用 Pro: $8/月〜 Pro: $9/月〜
大規模組織 Enterprise(要問い合わせ) Business: $24/月〜

個人の非商用利用はどちらも無料です。商用利用の場合、OrbStackはPro($8/月〜)、Docker DesktopはPro($9/月〜)が必要です。Docker Desktopは従業員250人以上または年間収益1000万ドル以上の企業で有料プランが必須となる点に注意してください。

なお、OrbStackの公式ライセンス条件では、フリーランスや企業での業務利用に加え、OrbStackの利用に関連する業務から年間$10,000以上の収入がある場合もライセンス購入が必要とされています。広告収益のあるブログの検証環境として利用する場合など、利用形態によっては商用利用に該当する可能性があるため、事前に公式のライセンス条件を確認してください。

OrbStackのインストール方法

システム要件

OrbStackの動作にはmacOS 14.0(Sonoma)以上が必要です。Apple SiliconとIntel Macの両方に対応しています。

Homebrewでインストール(推奨)

Homebrewが導入済みなら、1コマンドでインストールできます。

Terminal window
brew install orbstack

実行すると、アプリのインストールに加えて、orbコマンドやシェル補完も自動的にセットアップされます。

==> Installing Cask orbstack
==> Moving App 'OrbStack.app' to '/Applications/OrbStack.app'
==> Linking Bash Completion 'orbctl.bash' to '/opt/homebrew/etc/bash_completion.d/orbctl'
==> Linking Fish Completion 'orbctl.fish' to '/opt/homebrew/share/fish/vendor_completions.d/orbctl.fish'
==> Linking Zsh Completion '_orb' to '/opt/homebrew/share/zsh/site-functions/_orb'
==> Linking Zsh Completion '_orbctl' to '/opt/homebrew/share/zsh/site-functions/_orbctl'
==> Linking Binary 'orbctl' to '/opt/homebrew/bin/orbctl'
==> Linking Binary 'orb' to '/opt/homebrew/bin/orb'
🍺 orbstack was successfully installed!

初回起動と初期設定

インストール後、OrbStackを起動すると初期設定ウィザードが表示されます。

Welcome to OrbStack

「Next」をクリックすると、使用する機能の選択画面になります。Docker、Kubernetes、Linuxの中から使いたいものを選択します(後から変更可能)。

機能の選択画面

セットアップの途中で、Dockerソケットの互換性向上やコマンドラインツールのインストールのためにパスワードの入力を求められます。

ヘルパーツールのインストール確認

すべてのセットアップが完了すると、OrbStackのメイン画面が表示されます。左側のサイドバーからContainers、Volumes、Imagesなどを管理できます。

OrbStackのメイン画面

公式サイトからインストール

OrbStack公式サイトのダウンロードページから.dmgファイルをダウンロードし、アプリケーションフォルダにドラッグ&ドロップする方法もあります。

Docker Desktop からの移行

Docker Desktopがすでにインストールされている場合、OrbStackは既存のコンテナやイメージの移行をサポートしています。OrbStackを起動すると移行のオプションが表示されます。

ただし、認証情報ストアが異なるため、Docker Hubなどのレジストリには再度ログインが必要になる場合があります。

Terminal window
docker login

インストール後の確認

OrbStackを起動すると、dockerコマンドが使えるようになります。

Terminal window
docker version

OrbStack固有のCLIツールorbもインストールされます。

Terminal window
orb version

Docker Desktopとの共存時の注意

Docker Desktopがインストールされている環境では、dockerコマンドがどちらのエンジンに接続しているかを確認しておきましょう。docker context lsで現在のコンテキストを確認できます。

Terminal window
docker context ls
NAME DESCRIPTION DOCKER ENDPOINT
default Current DOCKER_HOST based configuration unix:///var/run/docker.sock
desktop-linux Docker Desktop unix:///.../.docker/run/docker.sock
orbstack * OrbStack unix:///.../.orbstack/run/docker.sock

*が付いているコンテキストが現在接続中のエンジンです。OrbStackアプリを起動すると、自動的にorbstackコンテキストが追加・選択されます。手動で切り替える場合は以下のコマンドを使います。

Terminal window
# OrbStackに切り替え
docker context use orbstack
# Docker Desktopに切り替え
docker context use desktop-linux

OrbStackの基本的な使い方

OrbStackのDocker環境は、通常のdockerコマンドをそのまま使えます。特別なコマンドを覚える必要はありません。

コンテナの起動

Nginxコンテナを起動してみます。

Terminal window
docker run -d -p 8080:80 --name my-nginx nginx

ブラウザでhttp://localhost:8080にアクセスすると、Nginxのデフォルトページが表示されます。

OrbStackでは、コンテナに自動でドメイン名が割り当てられます。上記の例ではhttp://my-nginx.orb.localでもアクセス可能です。ポート番号を覚える必要がなくなるので、複数のコンテナを同時に動かすときに便利です。

コンテナの状態確認・停止・削除

Terminal window
# 実行中のコンテナを一覧表示
docker ps
# コンテナを停止
docker stop my-nginx
# コンテナを削除
docker rm my-nginx

Docker Composeで複数サービスを動かす

OrbStackではdocker composeコマンドがそのまま動作します。ここでは、Nginx + PostgreSQL + Adminer の構成を例に試してみます。

プロジェクトの準備

作業ディレクトリを作成し、必要なファイルを用意します。

Terminal window
mkdir orbstack-compose-sample && cd orbstack-compose-sample

compose.yaml の作成

compose.yaml
services:
db:
image: postgres:16-alpine
environment:
POSTGRES_DB: myapp
POSTGRES_USER: myapp
POSTGRES_PASSWORD: password
volumes:
- db-data:/var/lib/postgresql/data
adminer:
image: adminer
ports:
- "8081:8080"
depends_on:
- db
web:
image: nginx:alpine
ports:
- "8080:80"
volumes:
- ./html:/usr/share/nginx/html:ro
volumes:
db-data:

3つのサービスを定義しています。

  • db: PostgreSQLデータベース
  • adminer: ブラウザで操作できるデータベース管理ツール
  • web: Nginxで静的ファイルを配信

表示用HTMLの作成

Terminal window
mkdir html
html/index.html
<!DOCTYPE html>
<html>
<head><title>OrbStack Test</title></head>
<body><h1>Hello from OrbStack!</h1></body>
</html>

起動と動作確認

Terminal window
# すべてのサービスをバックグラウンドで起動
docker compose up -d
# サービスの状態を確認
docker compose ps

以下のURLでそれぞれのサービスにアクセスできます。

サービス URL OrbStack自動ドメイン
Nginx http://localhost:8080 http://web.orbstack-compose-sample.orb.local
Adminer http://localhost:8081 http://adminer.orbstack-compose-sample.orb.local

Docker Composeの場合、OrbStackの自動ドメイン名は service.project.orb.local の形式になります。project 部分はディレクトリ名が使われます。

Adminerにアクセスしたら、以下の情報でログインできます。

項目
データベース種類 PostgreSQL
サーバー db
ユーザー名 myapp
パスワード password
データベース myapp

停止と後片付け

Terminal window
# コンテナを停止・削除
docker compose down
# ボリュームも含めて削除する場合
docker compose down -v

まとめ

  • OrbStackはmacOS向けの軽量なDocker実行環境で、ネイティブSwiftアプリとして実装されている
  • Docker Engineベースなので、既存のdockerコマンドやdocker composeがそのまま使える
  • 起動が速く、リソース消費が少ない。動的メモリ管理によりバッテリー消費も抑えられる
  • Docker Desktopからの移行は容易で、コンテナやイメージの引き継ぎもサポートされている
  • 個人の非商用利用は無料。商用利用にはProプランが必要
  • Kubernetes機能やLinux VM機能も備えているが、これらは別途掘り下げる価値がある

Dockerの知識がそのまま使えるので、Docker Desktop経験者であれば移行のハードルは低いです。開発中のバックグラウンドリソースを減らしたい、起動を速くしたいといった場面で、OrbStackは有力な選択肢になるでしょう。

ヒヨリ ヒヨリ

Docker Desktop重いなぁって思ってた人、OrbStackいいよ!起動2秒はマジで快適なんだ。dockerコマンドがそのまま使えるから、乗り換えも簡単。brew install orbstackするだけだし、まずは試してみて!