DockerをOSXから使える様にまとめてくれている
エントリがあった。
以前 Docker に挑んで少し触ったくらいで追ってなかったのだけれど、
エントリによると最近は boot2docker なんてコマンドがありDocker用に色々やってくれるらしい。
dokkuで個人Heroku作りたいのもあり試してみた。
エントリ通りにしたら2箇所で躓いたのでメモしておく。
トラブル
- OSX上で docker version が失敗した
- docker pull dockerfile/ghost が失敗した
1
2
3
4
5
6
7
8
9
|
$ docker version
Client version: 0.11.1
Client API version: 1.11
Go version (client): go1.2.1
Git commit (client): fb99f99
2014/06/07 13:41:59 Get http://localhost:4243/v1.11/version: EOF
$ docker pull dockerfile/ghost
...
... : dial tcp: lookup index.docker.io on 172.20.10.1:53: no answer from server
|
解決方法
OSX上で docker version が失敗した
VirtualBoxのネットワーク::NAT::ポートフォワーディング設定をする。
以下みたいな事をVirtualBoxの管理のもと行なっている
$ssh -L 4243:local:2375 localhost -p 2022
docker pull dockerfile/ghost が失敗した
DNSの指定を修正して再起動した。
1
2
3
4
5
6
7
8
|
$ boot2docker ssh
docker@boot2docker:~$ vi /etc/resolv.conf
## 以下を追加
## nameserver 8.8.8.8
docker@boot2docker:~$ cat /etc/resolv.conf
nameserver 8.8.8.8
docker@boot2docker:~$ exit
$ boot2docker restart
|
調査内容
OSX上で docker version が失敗した
- telnet localhost 4243 が拒否される事を確認した
- boot2docker-vm にログインして docker version が成功する事を確認した
- docker が開いているポート一覧を確認した
1
2
3
4
5
6
7
8
9
10
11
12
13
|
$ telnet localhost 4243
[masumi(%3)@air-trout blog]$ telnet localhost 4243
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Connection closed by foreign host.
$ boot2docker ssh
docker@boot2docker:~$ docker version
..
docker@boot2docker:~$ ps aux | grep docker
624 root /usr/local/bin/docker -d -D -g /var/lib/docker -H unix:// -H tcp://0.0.0.0:2375
|
docker pull dockerfile/ghost が失敗した
エラーメッセージでググったらIssueが見つかったので試した。
どうやらvm内部からdnsを解決できなかった模様。