LoginSignup
2

More than 1 year has passed since last update.

posted at

Mac(M1)+Lima+docker compose

DockerDesktop有償化にともない、MacでLimaを試した時のメモになります。

Limaとdockerのインストール

既存のDockerをアンインストールしてから実施しました。

arch -arm64  brew install lima docker

Limaとdockerを同時にインストールしないと、あとでリンクをはる作業が発生するかもしれません。確証はありません。
(同僚がはまってたポイント)

設定ファイルの準備

Githubから設定ファイルをダウンロードします。
このyamlファイルを利用して、Dockerが動作するホストを起動します。今回はlima.yamlで保存しました。

Dockerが動作するホストの起動

lima start lima.yaml

以下の出力が出れば起動が完了です。

中略
INFO[0057] READY. Run `limactl shell lima` to open the shell.
INFO[0057] Message from the instance "lima":
To run `docker` on the host (assumes docker-cli is installed):
$ export DOCKER_HOST=unix:///Users/***/.lima/lima/sock/docker.sock
$ docker ...

イメージを削除しなければ次回からは以下のコマンドで起動可能です。(yamlファイルの指定が不要になる)

lima start lima

ホストの状態確認コマンドは以下。

limactl  list

停止のコマンドは以下

 limactl stop lima

MacOSから直接Dockerコマンドを実行

以下の設定で直接Dockerコマンドを実行できるようにします。

export DOCKER_HOST=unix:///Users/***/.lima/lima/sock/docker.sock

docker composeのインストール

docker composeのバイナリを取得してプラグインとして認識させます。

mkdir -p ~/.docker/cli-plugins/
curl -SL https://github.com/docker/compose/releases/download/v2.2.3/docker-compose-darwin-x86_64 -o ~/.docker/cli-plugins/docker-compose
chmod +x ~/.docker/cli-plugins/docker-compose

認識しているか確認。バージョンが表示されたらOK。

docker compose version

実際に起動させてみる

簡易ですが以下のような設定ファイルを準備します。

docker-compose.yml
version: '3'

services:
    php:
        image: php:7.2-fpm
        container_name: loma-php
    nginx:
        image: nginx
        container_name: lima-nginx
        depends_on:
            - php

起動してみます。

docker compose up -d

dockerコマンドで起動を確認します。

docker ps
CONTAINER ID   IMAGE             COMMAND                  CREATED          STATUS          PORTS                                       NAMES
45a168202f74   nginx             "/docker-entrypoint.…"   50 seconds ago   Up 19 seconds   80/tcp                                      lima-nginx
da588b9ce87e   php:7.2-fpm       "docker-php-entrypoi…"   50 seconds ago   Up 20 seconds   9000/tcp                                    loma-php

以上でMac(M1)+Lima+docker composeの環境ができました。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
2