2017-02-24 148 views
0

我正在运行Docker on macOS。这意味着我真的在一台Linux虚拟机上运行Docker,并使用VirtualBox。这是正确的吗?Docker守护进程的名称是什么?

从MACOS我不能看到搬运工守护程序,因为它不是我的MacOS计算机上运行:

$ ps aux | grep docker 
max    4873 0.0 0.0 2432804 1732 s001 R+ 11:12AM 0:00.00 grep --color=auto docker 

但是,如果我ssh到Linux虚拟机(命名为default),那么我可以看到搬运工人相关的过程:

$ docker-machine ssh default 
         ##   . 
        ## ## ##  == 
       ## ## ## ## ## === 
      /"""""""""""""""""\___/ === 
     ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~/===- ~~~ 
      \______ o   __/ 
      \ \   __/ 
       \____\_______/ 
_     _ ____  _   _ 
| |__ ___ ___ | |_|___ \ __| | ___ ___| | _____ _ __ 
| '_ \/_ \/_ \| __| __)/_` |/ _ \/__| |//_ \ '__| 
| |_) | (_) | (_) | |_/__/ (_| | (_) | (__| < __/ | 
|_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_| 
Boot2Docker version 1.13.1, build HEAD : b7f6033 - Wed Feb 8 20:31:48 UTC 2017 
Docker version 1.13.1, build 092cba3 
[email protected]:~$ ps aux | grep docker 
root  2360 0.0 0.0 9752 108 ?  Ss 18:43 0:00 /sbin/udhcpc -b -i eth1 -x hostname boot2docker -p /var/run/udhcpc.eth1.pid 
root  2372 0.0 0.0 9752 116 ?  Ss 18:43 0:00 /sbin/udhcpc -b -i eth0 -x hostname boot2docker -p /var/run/udhcpc.eth0.pid 
root  2374 0.0 0.2 16060 2296 ?  S 18:43 0:00 ntpd -d -n -p 0.boot2docker.pool.ntp.org -p 1.boot2docker.pool.ntp.org -p 2.boot2docker.pool.ntp.org -p 3.boot2docker.pool.ntp.org 
root  2673 0.1 4.3 397800 44680 ?  Sl 18:43 0:02 /usr/local/bin/dockerd -D -g /var/lib/docker -H unix:// -H tcp://0.0.0.0:2376 --label provider=virtualbox --tlsverify --tlscacert=/var/lib/boot2docker/ca.pem --tlscert=/var/lib/boot2docker/server.pem --tlskey=/var/lib/boot2docker/server-key.pem -s aufs 
root  2679 0.0 1.2 351496 12824 ?  Ssl 18:43 0:01 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcontainerd/containerd --shim docker-containerd-shim --runtime docker-runc --debug 
root  3744 0.0 0.4 26428 4512 ?  Ss 19:13 0:00 sshd: docker [priv] 
docker 3746 0.0 0.2 26428 2764 ?  S 19:13 0:00 sshd: [email protected]/0 
docker 3747 0.0 0.2 11868 2244 pts/0 Ss 19:13 0:00 -sh 
docker 3784 0.0 0.1 13040 1696 pts/0 R+ 19:13 0:00 ps aux 
docker 3785 0.0 0.0 9756 916 pts/0 S+ 19:13 0:00 grep docker 

从码头工人有关的过程,其中一个是通过docker CLI创建从我给它的图像容器中的泊坞窗守护程序的列表?

例如,当我运行:

$ docker run dockerinaction/hello_world 
hello world 

以下事件发挥出来:

enter image description here

但我不认为这是在MacOS整个故事。在某种程度上,docker cli需要与Linux虚拟机中的某个守护进程交谈。它是哪个守护进程?

此外,virtualbox守护程序的名称是什么?当我为它进行case-insensitive grep我得到约5流程:

$ ps aux | grep -i virtual 
max    2307 1.6 6.7 3121608 558400 ?? S 10:42AM 1:28.47 /Applications/VirtualBox.app/Contents/MacOS/VBoxHeadless --comment default --startvm f4d0a6c5-768a-4979-a757-333ac0b99fd6 --vrde config 
max    1845 0.1 0.2 2514936 17688 ?? S 10:39AM 0:07.64 /Applications/VirtualBox.app/Contents/MacOS/VBoxSVC --auto-shutdown 
max    2308 0.0 0.1 2467048 10172 ?? S 10:42AM 0:00.10 /Applications/VirtualBox.app/Contents/MacOS/VBoxNetDHCP --ip-address 192.168.99.6 --lower-ip 192.168.99.100 --mac-address 08:00:27:CA:19:58 --netmask 255.255.255.0 --network HostInterfaceNetworking-vboxnet3 --trunk-name vboxnet3 --trunk-type netadp --upper-ip 192.168.99.254 
max    1843 0.0 0.1 2459396 9892 ?? S 10:39AM 0:02.69 /Applications/VirtualBox.app/Contents/MacOS/VBoxXPCOMIPCD 
max    1841 0.0 0.8 2681980 70140 ?? S 10:39AM 0:04.69 /Applications/VirtualBox.app/Contents/MacOS/VirtualBox 
max    5728 0.0 0.0 2433828 1928 s001 S+ 12:48PM 0:00.00 grep --color=auto -i virtual 

回答

1

我在MacOS运行的码头工人。这意味着我真的在带有VirtualBox的Linux虚拟机上运行Docker。这是正确的吗?

是的。

从docker相关的进程列表中,哪一个是从映像创建容器的docker守护进程,我通过docker cli给它?

Docker守护程序是docker-containerd进程(pid 2679)。

+0

你知道虚拟框的进程名是什么吗? – mbigras

+0

@mbigras:不,但我最好的猜测是它与大写V拼写,所以你需要将'-i'传递给'grep'来找到它。 – jwodder