テック技報最新号へ →
インフラ

Apple container を docker / docker compose から使う(socktainer)+周辺ツール

Apple 純正のコンテナ実行環境 Apple container(2026年6月に 1.0)に、socktainer で Docker 互換の REST API(Unix ソケット)を生やすと、いつもの docker コマンドや docker compose がそのまま動く。Docker Desktop を入れずに済む。

@matsuu · 投稿 2026-06-20
#infra#docker#apple-container#macos#kubernetes

どんなときに使う?

  • Mac で Docker Desktop をやめたい/常駐 Linux VM のメモリ消費を減らしたい
  • Apple container の速さや「コンテナごとに名前付きホスト」を使いつつ、既存の compose ファイルやツールを流用したい

手順(socktainer)

前提: Apple シリコンの Mac、Apple container をインストール済み(Homebrew の formula は macOS 26 以降が対象)。

bash
brew install socktainer

# 手動で起動する場合: ソケットは $HOME/.socktainer/container.sock
socktainer &
docker context use socktainer   # 起動時に socktainer という context が自動登録される
docker ps
docker compose up -d

# または DOCKER_HOST で指定
export DOCKER_HOST=unix://$HOME/.socktainer/container.sock

brew services start socktainer で常駐させる場合は HOME が Homebrew 側になるため、ソケットの場所が変わる:

bash
export DOCKER_HOST="unix://$(brew --prefix)/var/run/socktainer/.socktainer/container.sock"
  • OrbStack / Docker Desktop とは別 context なので併用でき、docker context use ... や docker --context socktainer ... で切り替えられる。
  • @__syumai が「雑に試してみたけど、普通に docker compose 動きました」と報告している。Podman Desktop の Apple Container 拡張も socktainer を使っているとのこと(@matsuu)。

周辺ツール・情報

  • コンテナごとにホスト名を割り当てられるのが便利(Apple container 1.0 の systemd・名前付きホスト・起動速度を Docker と比べた Zenn 記事への反応): @hoto17296 · 2026-06-28 / @__syumai · 2026-06-28
  • Mac 用の kind のような k8s クラスタ構築ツール(Apple container 利用、Docker 不要、常駐 Linux VM がないのでメモリ消費が少ない): @mazrean22 · 2026-06-28
  • 「Apple container を Docker Desktop と入れ替える」記事: @rioriost · 2026-06-25
  • 1.0 リリースの話題: @shibu_jp · 2026-06-10
  • テスト用コンテナを軽く立てる別解として microsandbox(vitest の setup で redis イメージを起動): @ryoppippi · 2026-06-29

注意点

  • socktainer の Docker API 互換は部分的。docker stats のメモリは Apple container の VM 上限(デフォルト 1 GiB / コンテナ、--memory で変更可)に対する値で、ホストの RAM ではない。
  • ビルドやサービス間 DNS、対話的な exec などはバージョンによって対応状況が違うので、README とリリースノートを確認する。

出典

X の元の投稿を開く