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の主な違いを整理します。

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

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

これだけの差が生まれる背景には、アーキテクチャの設計思想の違いがあると推測されます。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専用に全レイヤーを最適化した専用設計」であることが、パフォーマンス差の主な要因と考えられます。

機能の違い

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

ライセンスと料金の比較

プランOrbStackDocker 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でそれぞれのサービスにアクセスできます。

サービスURLOrbStack自動ドメイン
Nginxhttp://localhost:8080http://web.orbstack-compose-sample.orb.local
Adminerhttp://localhost:8081http://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するだけだし、まずは試してみて!