この日記のはてなブックマーク数 Subscribe with livedoor Reader

2015-07-23 Thu


「Docker基本操作」の裏側で起きてること、を調べる前準備 [Docker]


昨日書いた記事 [[2015-07-22-2]] は、あくまで Docker Client の使い方であって、Docker Daemon を通じて、Docker Host で何が起こっているかは、わかりませんでした。詳細を知るには、Docker Hostにログインする必要があります。

boot2docker は、VirtualBox 上で、boot2docker-vm という Docker Hostを仮想マシンとして作成します。この VM にログインしながら、いろいろ触れば、裏でなにをやっているか分かりそうですね。vagrant と同様に、boot2docker ssh で、そのあたりをケアしてくれます。

asteroid:bin kunitake$ boot2docker ssh
                ## .
          ## ## ## ==
       ## ## ## ## ## =
   /"""""""""""""""""\___/
=
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ / ===- ~~~
   \______ o __/
     \ \ __/
      \____\_______/
 _ _ ____ _ _

|__ ___ ___ | |_|___ \ __| | ___ ___| | _____ _ __
'_ \ / _ \ / _ \| __| __) / _` |/ _ \ / __| |/ / _ \ '__|
|_) | (_) | (_) | |_ / __/ (_| | (_) | (__| < __/ |
_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_|

Boot2Docker version 1.7.1, build master : c202798 - Wed Jul 15 00:16:02 UTC 2015
Docker version 1.7.1, build 786b29d
docker@boot2docker:~$ cat /etc/os-release
NAME=Boot2Docker
VERSION=1.7.1
ID=boot2docker
ID_LIKE=tcl
VERSION_ID=1.7.1
PRETTY_NAME="Boot2Docker 1.7.1 (TCL 6.3); master : c202798 - Wed Jul 15 00:16:02 UTC 2015"
ANSI_COLOR="1;34"
HOME_URL="http://boot2docker.io"
SUPPORT_URL="https://github.com/boot2docker/boot2docker"
BUG_REPORT_URL="https://github.com/boot2docker/boot2docker/issues"
docker@boot2docker:~$ uname -a
Linux boot2docker 4.0.7-boot2docker #1 SMP Wed Jul 15 00:01:41 UTC 2015 x86_64 GNU/Linux


ip link showすると、なにやら見慣れないインターフェースが。

docker@boot2docker:~$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN mode DEFAULT group default
    link/ether b6:0b:83:ca:4c:0e brd ff:ff:ff:ff:ff:ff
3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 08:00:27:0a:49:46 brd ff:ff:ff:ff:ff:ff
4: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 08:00:27:fb:2e:8b brd ff:ff:ff:ff:ff:ff
5: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN mode DEFAULT group default
    link/ether 06:a2:62:51:7f:03 brd ff:ff:ff:ff:ff:ff


ファイルシステム構成

docker@boot2docker:~$ df -h
Filesystem Size Used Available Use% Mounted on
tmpfs 1.8G 106.4M 1.7G 6% /
tmpfs 1000.9M 0 1000.9M 0% /dev/shm
/dev/sda1 18.2G 418.2M 16.8G 2% /mnt/sda1
cgroup 1000.9M 0 1000.9M 0% /sys/fs/cgroup
none 930.7G 326.1G 604.6G 35% /Users
/dev/sda1 18.2G 418.2M 16.8G 2% /mnt/sda1/var/lib/docker/aufs


ん?どうやら標準で、VirtualBox 動かしている母艦の /User を mount してる模様。

関係ありそうなdaemon達

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 1.2 0.0 9764 1900 ? Ss 01:40 0:03 init
root 143 0.0 0.0 8516 1992 ? Ss 01:40 0:00 /sbin/udevd --daemon
root 545 0.0 0.0 8512 1768 ? S 01:40 0:00 /sbin/udevd --daemon
root 546 0.0 0.0 8512 1696 ? S 01:40 0:00 /sbin/udevd --daemon
root 605 0.0 0.0 9764 108 ? Ss 01:40 0:00 /sbin/udhcpc -b -i eth0 -x hostname box -p /var/run/udhcpc.eth0.pid
root 617 0.0 0.0 9764 112 ? Ss 01:40 0:00 /sbin/udhcpc -b -i eth1 -x hostname box -p /var/run/udhcpc.eth1.pid
root 692 0.0 0.0 11856 1952 ? S 01:40 0:00 crond -f -d 8
root 719 0.0 0.1 25128 2960 ? Ss 01:40 0:00 /usr/local/sbin/sshd
root 723 0.0 0.1 16064 2060 ? S 01:40 0:00 ntpd -d -n -p pool.ntp.org
root 728 0.0 0.0 6092 1488 ? Ss 01:40 0:00 /usr/local/sbin/acpid
root 810 0.2 0.9 257412 19000 ? Sl 01:40 0:00 /usr/local/bin/docker -d -D -g /var/lib/docker -H unix:// -H tcp://0.0.0.0:2376 --tlsverify --tlscacert=/var/lib/boot2docker/tls/ca.pem --tlscert=/var/lib/boot2docker/tls/server.pem --tlskey=/var/lib/boot2docker/tls/serverkey.pem
root 833 0.0 0.1 11860 2120 tty1 Ss+ 01:40 0:00 -sh
root 834 0.0 0.0 9768 1888 ttyS0 Ss+ 01:40 0:00 /sbin/getty -l /usr/local/bin/autologin 9600 ttyS0 vt100
docker 927 0.0 0.1 27688 3080 ? R 01:41 0:00 sshd: docker@pts/0
docker 928 0.0 0.1 11860 2172 pts/0 Ss 01:41 0:00 -sh
root 1000 0.0 0.0 9764 940 ttyS1 Ss+ 01:44 0:00 /sbin/getty -l /usr/local/bin/autologin 9600 ttyS1 vt100
docker 1005 0.0 0.0 13016 1748 pts/0 R+ 01:45 0:00 ps aux


その他、ユーザランド周りとか、眺めてみる。いやー以前 Dockerを軽く触ってから、結構経ってるので、いろいろと知識の更新が必要だなぁとつくづく……
lxc周りの見直しと、libcontainer あたりのチェックが先かなぁ……

Referrer (Inside): [2015-07-27-1]



小ネギでご飯のお供 [Food]


どこかで、下記のツイートを見ました。



非常に簡単そうなので、試してみました。

……これは太る(確信)。みんなもやるといいよ!


IPv4/IPv6 meter
検索キーワードは複数指定できます
ChangeLogを検索
Google
Web www.kunitake.org
思ったより安い……時もある、Amazon

カテゴリ