Colima と Podman
macOS で Colima または Podman machine を無料の Docker バックエンドとして使う。
概要
Colima と Podman machine は、macOS における無料でオープンソースな Docker Desktop の代替です。どちらも軽量な Linux 仮想マシンを起動して Docker 互換のソケットを公開し、Dockerman は他のエンジンと同じように接続できます。
Dockerman はこれらのエンジンをインストール、更新、起動、停止しません。Colima または Podman を自分で管理し、そのソケットを Dockerman に設定してください。
インストール
# Colima(および操作対象の Docker CLI)
brew install colima docker
# または Podman
brew install podman初回起動(ターミナルで実行してください)
エンジンは初回起動時に仮想マシンを作成し、その際にゲスト OS イメージをネットワークからダウンロードします。進捗が見えるよう、ターミナルで自分で実行してください:
# Colima —— 初回起動時に約 330 MB のイメージをダウンロード
colima start --cpus 4 --memory 8
# Podman —— quay.io から約 1 GB のイメージをダウンロード
podman machine init --cpus 4 --memory 8192
podman machine start初回起動は回線速度によっては数分かかります。以降の起動はダウンロード済みイメージを再利用するため数秒で完了します。
CPU とメモリはマシンに合わせて設定してください。CPU コア数の半分、メモリ 4–8 GB が良い出発点です。アップストリームのデフォルトである 2 GB は、ほとんどのイメージビルドには不足します。
プロキシ環境の場合
イメージのダウンロードはエンジン自身のプロセス内で行われるため、初回起動の前に同じターミナルセッションでプロキシ変数を設定してください:
export HTTPS_PROXY=http://127.0.0.1:7890
export HTTP_PROXY=http://127.0.0.1:7890
colima start # または: podman machine init初回起動のあと
仮想マシンの起動後、設定 → Docker でローカルソケット接続を選び、エンジンのソケットパスを入力します。
- Colima は通常
$HOME/.colima/default/docker.sockを使用します。 - Podman machine は
podman machine inspectでConnectionInfo.PodmanSocket.Pathを確認できます。
Dockerman は現在、Colima または Podman machine のライフサイクル、CPU、メモリ、ディスクを管理しません。Podman の検証コマンドは machine ソケットを検出できますが、通常の接続には明示的に動作するソケットパスが必要です。
トラブルシューティング
- 「Socket not found」は、仮想マシンが停止しているか、設定したパスが誤っていることを示します。
colima start/podman machine startを実行し、設定のパスを確認してください。 - 制限のあるネットワークでダウンロードが進まない場合は、上記のプロキシ変数を設定して再試行してください。
- 仮想マシンのホスト側メモリ使用量は稼働中は増える一方です。エンジンを再起動すると回収されます。