IntelliJ - Docker Toolbox on Macの環境設定


tl;dr

Docker Toolbox on macOSを使っていますが、IntelliJのTerminalからDockerの操作をしようとするとエラーになったので、調べた内容をメモしておく。

IntelliJのターミナル起動

下のバーにある「Terminal」から起動する。

エラー内容

下記のようなエラーが発生しました。

ターミナル
$ docker-compose ps
ERROR: Couldn't connect to Docker daemon - you might need to run `docker-machine start default`.

エラーにしたがってdocker-machineのdefaultを起動してみる。

ターミナル
$ docker-machine start default
Starting "default"...
Machine "default" is already running.

既に起動済み・・・
docker-machineの一覧を確認してみる。

ターミナル
$ docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER        ERRORS
default   -        virtualbox   Running   tcp://192.168.99.100:2376           v18.06.1-ce

docker-machineにdefaultは存在するようです。
次に環境変数を確認してみる。

ターミナル
$ env | grep DOCKER

何も表示されない。
どうやらこれが原因のようです。

解決方法

下記コマンドにて、docker-machineの環境変数を設定する。

ターミナル
$ eval "$(docker-machine env default)"

設定状況を確認してみる。

ターミナル
$ env | grep DOCKER
DOCKER_HOST=tcp://192.168.99.100:2376
DOCKER_MACHINE_NAME=default
DOCKER_TLS_VERIFY=1
DOCKER_CERT_PATH=/Users/hoge/.docker/machine/machines/default

再度、docker-composeコマンドを試してみる。

ターミナル
$ docker-compose ps
Name           Command          State          Ports        
------------------------------------------------------------
rails   /usr/local/bin/run.sh   Up      0.0.0.0:80->3000/tcp

無事にDockerが操作できるようになりました。

まとめ

Intellij起動時に毎回実行するのもちょっと面倒な感じがします。
初期値の設定みないな機能が何かいいのですが・・・

以上

参考サイト