LoginSignup
7
6

More than 5 years have passed since last update.

brew の docker* を Cask の Docker for Mac に入れ替える

Last updated at Posted at 2017-02-22

追記:

Version 17.03.0-ce-mac1 (15583)

cask でインストールすると /usr/local/Caskroom/docker/1.13.1.15353 (68B) がインストールされて、これは proxy認証 の必要な環境では Mac の「環境設定 − ネットワーク」からうまく値を引っ張ってきてくれない。
cask でインストールした後で Docker メニューアイコンから Check for Updates... でアップデートして docker-ce 17.03 をインストールしてしまえば解決します。
Docker メニューアイコンの Preferences... からプロキシを手動設定にして、環境変数の設定のように

http://<proxy username>:<proxy password>@<proxy server>:<proxy port>

の形式にすればOK。
<proxy username>@ を含む人も、%40 に置き換えてやれば認証しました。(プロキシーサーバーに依るかも)

タイトルが全て。

Docker for Mac のインストールはこちらのサイトにあるようにインストールします。
http://stangler.hatenablog.com/entry/2016/11/17/141705

その前に、brew でインストールしたりアップデートしたりで今までに使っていた docker* にオサラバします。って、brew uninstall して docker* の実行ファイルが消えなかったので /usr/local/bin/{docker,docker-machine,docker-compose}rm で消しておしまい。

以下、だらだらとコマンドの履歴

検索と削除の手順の参考に。

既存の docker を調べます。
$ brew list | grep -i docker
docker
docker-machine
$ docker --version
Docker version 1.12.5, build 7392c3b
$ which docker
/usr/local/bin/docker
$ ls /usr/local/bin/docker*
/usr/local/bin/docker       
/usr/local/bin/docker-compose   
/usr/local/bin/docker-machine
brew を使ってアンインストール
$ brew uninstall docker docker-machine docker-compose
Error: No such keg: /usr/local/Cellar/docker-compose

docker-compose は無いって言われる。きっと brew 管理外でインストールしたのでしょう。

$ brew uninstall docker docker-machine
Uninstalling /usr/local/Cellar/docker/1.13.1... (11 files, 12.8M)
Uninstalling /usr/local/Cellar/docker-machine/0.9.0... (11 files, 28.6M)
docker-machine 0.7.0, 0.8.1 are still installed.
Remove all versions with `brew uninstall --force docker-machine`.

今度は docker-machine が複数バージョン入ってると言われる。ここは表示のとおりに --force を付けて実行。

$ brew uninstall --force docker-machine
Uninstalling docker-machine... (14 files, 66.7M)
消えた事を確認。
$ brew list
...

$ docker --version
Docker version 1.12.5, build 7392c3b
$ which docker
/usr/local/bin/docker

消えたはずの docker さんにバージョンを答えられる。
良く見ると brew で uninstall した docker とバージョンが違う。
ついでに /usr/local/bin/docker も docker-machine も docker-compose もご健在。

直接削除。

まずは ls で影響範囲を調べて、rm で削除

$ ls /usr/local/bin/docker*
/usr/local/bin/docker       
/usr/local/bin/docker-compose   
/usr/local/bin/docker-machine
$ rm /usr/local/bin/docker*
Docker for Mac をインストール

消えたらすっきりと Docker for Mac をインストール。またバージョン違いとか混在しちゃうとアレなので brew cask を使って .dmg をインストールします。
(http://stangler.hatenablog.com/entry/2016/11/17/141705 参照)

$ brew cask install docker
...
$ brew cask list
docker                  gimp                    osxfuse                 wineskin-winery         xquartz
$ docker --version
-bash: docker: command not found
docker 無いって言われる...

/Applications/Docker.app を起動します。

$ open /Applications/Docker.app

コマンドジャンキーな方向け。普通に Applications の Docker をダブルクリックでいいです。(=_=)

GUI の操作でなんやかんやした後で docker が使えるようになります。

$ docker --version
Docker version 1.13.1, build 092cba3
$ docker-machine --version
docker-machine version 0.9.0, build 15fd4c7
$ docker-compose --version
docker-compose version 1.11.1, build 7c5d5e4

Macネイティブで docker run できるのか。仮想化のレイヤは後で調べる。

閑話休題

脊髄反射で cmd-k で iTerm2 の履歴を消してしまうクセがあるのでところどころコマンドの出力が妄想になっています。
screen 入れてるんだから screen でログ出力するようにしよう。

7
6
0

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
  3. You can use dark theme
What you can do with signing up
7
6