CentOS 7/docker1.0.0でハマったところメモ.

その1:ポートの割り当て
コンテナの22をホストの11111に割り当てようとして,次のコマンドを打つと,11111がipv6のポートとしてバインドされてしまう.
docker run -d -p 11111:22 something /usr/sbin/sshd -D


これは,次のようにして回避.
docker run -d -p 0.0.0.0:11111:22 something /usr/sbin/sshd -D

ちなみに,0.0.0.0を127.0.0.1とかにすると,ローカルホストからの接続しか出来なくなる.

(修正)
$ netstat -na
...
tcp6 0 0 :::80 :::* LISTEN
...
と表示されるので,IPv6でアクセスしないといけないように見えたけど,IPv4でアクセスできた.


その2:ポートがすでにバインドされている,と言われてしまう
netstatで確認しても,バインドされてないはずのポートを-pで指定しているのに,なぜか
2014/07/10 15:51:36 Error: Cannot start container : port has already been allocated
と言われてしまう.

これは,systemctl restart dockerで解決した.