以下の内容はhttps://syu-m-5151.hatenablog.com/entry/2025/04/16/201211より取得しました。


MACのDocker 環境はcolima にしました

はじめに

コンテナ技術は現代のソフトウェア開発において不可欠なツールとなっています。特にMacユーザーにとって、効率的なコンテナ環境の構築は開発ワークフローを大きく改善します。そんな中、ローカルの環境をColimaにしたのでブログにします。

Colimaは、macOSLinux上でコンテナランタイムを最小限の設定で実行できる軽量なツールです。Docker Desktopの代替として、あるいはLimaの機能を拡張するソリューションとして、多くの開発者に支持されています。

github.com

このドキュメントでは、Colimaの基本的な機能と特徴、インストール方法、そして実際の使用例について詳しく説明します。Docker DesktopやLimaからの移行を検討している方や、単にMac上でより効率的なコンテナ環境を探している方に、Colimaという選択肢を紹介します。

Colimaとは?

Colimaは、macOS(およびLinux)上でコンテナランタイムを最小限のセットアップで実行するためのツールです。Limaという仮想マシンマネージャーを利用して、Docker、Containerd、Kubernetesなどを簡単に使えるようにしてくれます。

主な特徴としては:

  • Intel MacApple Silicon Macの両方をサポート
  • シンプルなCLIインターフェースと分かりやすいデフォルト設定
  • 自動ポートフォワーディング
  • ボリュームマウント
  • 複数インスタンスのサポート
  • 複数のコンテナランタイムをサポート(Docker、Containerd、Incusなど)

なぜColimaを選んだのか

元々はDocker Desktopを使っていましたが、一度Limaに移行し、そこからさらにColimaに移行することにしました。その理由はいくつかあります。

  1. シンプルなCLI: GUIではなくCLIベースなので、自動化やスクリプトに組み込みやすいです
  2. カスタマイズ性: 仮想マシンのCPU、メモリ、ディスク容量などを簡単に調整できます
  3. オープンソース: 完全にオープンソースで、ライセンス問題の心配がありません
  4. 統合管理: LimaをベースにしながらもDocker、Containerd、Kubernetesなどを一元的に管理できる点が便利です

正直、Limaで満足していた。動機としては気になったから移行したというのが本音

Limaとの比較

Colimaはより高レベルな方法でLimaを活用しています。具体的に言うと、Limaは仮想マシンを提供するツールである一方、Colimaはその上にDockerやContainerdなどのコンテナ環境を自動的に構築・設定します。

これは、自分でLimaの設定ファイルを書いてDockerを動かす作業を自動化してくれるようなものです。つまり、Limaの複雑な設定や調整をせずに、すぐにコンテナ環境を使い始めることができます。

Colimaの主な利点は:

  1. 統合された環境: Limaは純粋な仮想マシン管理に特化していますが、ColimaはDocker/Containerd/Kubernetesの設定を自動的に行う点が便利です
  2. シンプルなCLIインターフェース: 必要なコマンドが少なく、直感的に操作できます
  3. 自動化のしやすさ: 特にbrew servicesとの統合が優れています

インストールと基本的な使い方

Homebrewを使って簡単にインストールできます。

brew install colima

基本的な使い方はとてもシンプル:

# 起動
colima start

# 状態確認
colima status

# 停止
colima stop

私の環境では次のような出力になっています。

colima status
INFO[0000] colima is running using macOS Virtualization.Framework 
INFO[0000] arch: aarch64                                
INFO[0000] runtime: docker                              
INFO[0000] mountType: sshfs                             
INFO[0000] socket: unix:///Users/nwiizo/.colima/default/docker.sock 

システム起動時に自動起動する設定

開発環境として日常的に使うので、Macの起動時にColimaも自動的に起動するように設定しました。Homebrewのservicesを使うと簡単です。

brew services start colima

これだけで、Macを再起動してもColimaが自動的に起動するようになります

以前のLimaでは、~/Library/LaunchAgents/com.lima.docker.plistのようなLaunchAgentsのplistファイルを作成・編集して自動起動を設定する必要がありました。Colimaではbrew servicesコマンド一つで同様の設定ができるようになり、格段に簡単になりました!

カスタマイズの例

デフォルトのColimaは2CPU、2GiBメモリ、100GiBストレージで構成されていますが、必要に応じて変更できます。

# CPUとメモリを増やす場合
colima stop
colima start --cpu 4 --memory 8

# 設定ファイルで編集する場合
colima start --edit

Lima/Docker Desktopからの移行で注意したこと

Lima や Docker Desktopから移行する際に、いくつか注意点がありました:

  1. Dockerコンテキスト: Colimaは独自のDockerコンテキストを作成します。docker context lsdocker context useコマンドで管理できます。

  2. Dockerソケットの場所: デフォルトでは~/.colima/default/docker.sockにあります。一部のツールで直接ソケットパスを指定する必要がある場合は、この場所を指定します。Limaとは異なるパスなので注意が必要です。

  3. ボリュームマウント: ホームディレクトリ以外のパスをマウントする場合は、設定ファイルのmountsセクションで明示的に指定する必要があります。

  4. 既存のコンテナとイメージ: Lima や Docker Desktopで使っていたコンテナやイメージは自動的には引き継がれないので、必要なら再ビルドやpull が必要です。

Colimaの動作確認

実際にcolima statusコマンドを実行すると、以下のような情報が表示されます。

colima status
INFO[0000] colima is running using macOS Virtualization.Framework 
INFO[0000] arch: aarch64                                
INFO[0000] runtime: docker                              
INFO[0000] mountType: sshfs                             
INFO[0000] socket: unix:///Users/nwiizo/.colima/default/docker.sock 

また、colima listコマンドでは、実行中のColimaインスタンスの詳細な情報が確認できます。

colima list
PROFILE    STATUS     ARCH       CPUS    MEMORY    DISK      RUNTIME    ADDRESS
default    Running    aarch64    2       2GiB      100GiB    docker

これがColimaのデフォルト設定です。これらの値は必要に応じてcolima startコマンドのオプションや設定ファイルで変更できます。

まとめ

LimaベースのColimaへの移行は思った以上に簡単で、日常の開発作業がより快適になりました。特にCLIベースのシンプルさと設定のわかりやすさが気に入っています。

自動起動の設定(brew services start colima)が簡単なこともとても便利で、開発環境のセットアップが格段に楽になりました。

Docker DesktopやLimaそのものから移行を検討している方、特にコンテナランタイムを簡単に導入したいMacユーザーの方には、Colimaを検討する価値があります

普通にローカルのCPUとメモリを喰う生成AIツール全盛時代に最適な環境がなにか俺にも分からん。




以上の内容はhttps://syu-m-5151.hatenablog.com/entry/2025/04/16/201211より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14