Debian主机:CTRL + P + Q不会保持容器存活

时间:2016-02-11 11:20:43

标签: docker

我正在关注Docker网站上的自定进度视频教程:https://training.docker.com/self-paced-training

在第一个视频中,导师讨论了拆卸码头,同时仍然保持容器存活。显示的示例是运行:

docker run -i -d ubuntu:latest  /bin/bash

然后在创建容器时,使用以下命令退出:

CTRL + P + Q

这对我来说似乎不起作用。我注意到导师正在使用Windows和Putty。我在我的Debian开发机器上使用docker,所以我不确定分离命令是否不同。

当我按下上面的组合键时,它从容器中退出,但运行:

ps -ef

...没有显示任何容器。这是我的输出:

sheldon@yosec:~$ ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 Feb10 ?        00:00:03 /sbin/init
root         2     0  0 Feb10 ?        00:00:00 [kthreadd]
root         3     2  0 Feb10 ?        00:00:00 [ksoftirqd/0]
root         5     2  0 Feb10 ?        00:00:00 [kworker/0:0H]
root         7     2  0 Feb10 ?        00:00:04 [rcu_sched]
root         8     2  0 Feb10 ?        00:00:00 [rcu_bh]
root         9     2  0 Feb10 ?        00:00:00 [migration/0]
root        10     2  0 Feb10 ?        00:00:00 [watchdog/0]
root        11     2  0 Feb10 ?        00:00:00 [watchdog/1]
root        12     2  0 Feb10 ?        00:00:00 [migration/1]
root        13     2  0 Feb10 ?        00:00:00 [ksoftirqd/1]
root        15     2  0 Feb10 ?        00:00:00 [kworker/1:0H]
root        16     2  0 Feb10 ?        00:00:00 [watchdog/2]
root        17     2  0 Feb10 ?        00:00:00 [migration/2]
root        18     2  0 Feb10 ?        00:00:00 [ksoftirqd/2]
root        20     2  0 Feb10 ?        00:00:00 [kworker/2:0H]
root        21     2  0 Feb10 ?        00:00:00 [watchdog/3]
root        22     2  0 Feb10 ?        00:00:00 [migration/3]
root        23     2  0 Feb10 ?        00:00:00 [ksoftirqd/3]
root        25     2  0 Feb10 ?        00:00:00 [kworker/3:0H]
root        26     2  0 Feb10 ?        00:00:00 [khelper]
root        27     2  0 Feb10 ?        00:00:00 [kdevtmpfs]
root        28     2  0 Feb10 ?        00:00:00 [netns]
root        29     2  0 Feb10 ?        00:00:00 [khungtaskd]
root        30     2  0 Feb10 ?        00:00:00 [writeback]
root        31     2  0 Feb10 ?        00:00:00 [ksmd]
root        32     2  0 Feb10 ?        00:00:00 [khugepaged]
root        33     2  0 Feb10 ?        00:00:00 [crypto]
root        34     2  0 Feb10 ?        00:00:00 [kintegrityd]
root        35     2  0 Feb10 ?        00:00:00 [bioset]
root        36     2  0 Feb10 ?        00:00:00 [kblockd]
root        39     2  0 Feb10 ?        00:00:00 [kswapd0]
root        40     2  0 Feb10 ?        00:00:00 [fsnotify_mark]
root        46     2  0 Feb10 ?        00:00:00 [kthrotld]
root        47     2  0 Feb10 ?        00:00:00 [ipv6_addrconf]
root        49     2  0 Feb10 ?        00:00:00 [deferwq]
root        93     2  0 Feb10 ?        00:00:00 [khubd]
root        94     2  0 Feb10 ?        00:00:00 [ata_sff]
root       106     2  0 Feb10 ?        00:00:00 [scsi_eh_0]
root       107     2  0 Feb10 ?        00:00:00 [scsi_tmf_0]
root       108     2  0 Feb10 ?        00:00:00 [scsi_eh_1]
root       109     2  0 Feb10 ?        00:00:00 [scsi_tmf_1]
root       134     2  0 Feb10 ?        00:00:01 [kworker/2:1H]
root       136     2  0 Feb10 ?        00:00:01 [kworker/0:1H]
root       137     2  0 Feb10 ?        00:00:00 [kworker/3:1H]
root       172     2  0 Feb10 ?        00:00:00 [kdmflush]
root       174     2  0 Feb10 ?        00:00:00 [bioset]
root       175     2  0 Feb10 ?        00:00:00 [kcryptd_io]
root       176     2  0 Feb10 ?        00:00:00 [kcryptd]
root       178     2  0 Feb10 ?        00:00:00 [bioset]
root       180     2  0 Feb10 ?        00:00:00 [kworker/1:1H]
root       185     2  0 Feb10 ?        00:00:00 [kdmflush]
root       186     2  0 Feb10 ?        00:00:00 [bioset]
root       188     2  0 Feb10 ?        00:00:00 [kdmflush]
root       189     2  0 Feb10 ?        00:00:00 [bioset]
root       191     2  0 Feb10 ?        00:00:00 [kdmflush]
root       193     2  0 Feb10 ?        00:00:00 [bioset]
root       221     2  0 Feb10 ?        00:00:04 [jbd2/dm-1-8]
root       222     2  0 Feb10 ?        00:00:00 [ext4-rsv-conver]
root       253     2  0 Feb10 ?        00:00:00 [kauditd]
root       262     1  0 Feb10 ?        00:00:00 /lib/systemd/systemd-udevd
root       269     1  0 Feb10 ?        00:00:00 /lib/systemd/systemd-journald
root       315     2  0 Feb10 ?        00:00:00 [hd-audio1]
root       322     2  0 Feb10 ?        00:00:00 [kpsmoused]
root       323     2  0 Feb10 ?        00:00:00 [cfg80211]
root       327     2  0 Feb10 ?        00:00:00 [kmemstick]
root       328     2  0 Feb10 ?        00:00:00 [rtsx_usb_ms_2]
root       362     2  0 Feb10 ?        00:00:00 [hd-audio0]
root       401     2  0 Feb10 ?        00:00:00 [ext4-rsv-conver]
root       414     2  0 Feb10 ?        00:00:00 [jbd2/dm-3-8]
root       415     2  0 Feb10 ?        00:00:00 [ext4-rsv-conver]
root       419     2  0 Feb10 ?        00:00:00 [ext4lazyinit]
root       581     1  0 Feb10 ?        00:00:00 /sbin/rpcbind -w
statd      595     1  0 Feb10 ?        00:00:00 /sbin/rpc.statd
root       600     2  0 Feb10 ?        00:00:00 [rpciod]
root       602     2  0 Feb10 ?        00:00:00 [nfsiod]
root       609     1  0 Feb10 ?        00:00:00 /usr/sbin/rpc.idmapd
root       610     1  0 Feb10 ?        00:00:00 /usr/lib/bluetooth/bluetoothd
root       611     1  0 Feb10 ?        00:00:00 /usr/sbin/cron -f
daemon     612     1  0 Feb10 ?        00:00:00 /usr/sbin/atd -f
root       615     1  0 Feb10 ?        00:00:00 /lib/systemd/systemd-logind
message+   617     1  0 Feb10 ?        00:00:12 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd
root       623     1  0 Feb10 ?        00:00:00 /usr/sbin/rsyslogd -n
root       627     1  0 Feb10 ?        00:00:01 /usr/sbin/acpid
root       663     1  0 Feb10 tty1     00:00:00 /bin/login --        
Debian-+   880     1  0 Feb10 ?        00:00:00 /usr/sbin/exim4 -bd -q30m
root       896     1  0 Feb10 ?        00:00:00 dhclient -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases e
sheldon    919   663  0 Feb10 tty1     00:00:00 -bash
root       938   919  0 Feb10 tty1     00:00:00 su root
root       939   938  0 Feb10 tty1     00:00:00 bash
root      1327     1  0 Feb10 ?        00:00:16 /usr/lib/packagekit/packagekitd
root      7497     1  0 Feb10 ?        00:00:00 /usr/lib/upower/upowerd
root      7528     1  0 Feb10 ?        00:00:01 /usr/lib/udisks2/udisksd --no-debug
colord    7568     1  0 Feb10 ?        00:00:00 /usr/lib/colord/colord
root      7608     1  0 Feb10 ?        00:00:00 /usr/lib/accountsservice/accounts-daemon
root      7615     1  0 Feb10 ?        00:00:00 /sbin/wpa_supplicant -u -s -O /run/wpa_supplicant
root     15042     2  0 09:13 ?        00:00:00 [irq/62-mei_me]
root     15045     2  0 09:13 ?        00:00:00 [kworker/u17:0]
root     15046     2  0 09:13 ?        00:00:00 [hci0]
root     15047     2  0 09:13 ?        00:00:00 [hci0]
root     15055     2  0 09:13 ?        00:00:00 [kworker/u17:2]
root     16443     2  0 10:16 ?        00:00:00 [kworker/3:0]
root     16508     1  0 10:17 ?        00:00:19 /usr/bin/docker daemon -H fd://
root     16586   939  0 10:18 tty1     00:00:00 su sheldon
sheldon  16587     1  0 10:18 ?        00:00:00 /lib/systemd/systemd --user
sheldon  16588 16587  0 10:18 ?        00:00:00 (sd-pam)  
sheldon  16590 16586  0 10:18 tty1     00:00:00 bash
sheldon  16596 16590  0 10:18 tty1     00:00:00 /bin/sh /usr/bin/startx
sheldon  16618 16596  0 10:18 tty1     00:00:00 xinit /etc/X11/xinit/xinitrc -- /etc/X11/xinit/xserverrc :0 vt1 -auth /tmp/serv
root     16619 16618  6 10:18 tty1     00:03:52 /usr/bin/X -nolisten tcp :0 vt1 -auth /tmp/serverauth.91BAA94QlC
sheldon  16625 16618  0 10:18 tty1     00:00:00 x-session-manager
sheldon  16648 16625  0 10:18 ?        00:00:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session x-session-manager
sheldon  16651     1  0 10:18 tty1     00:00:00 /usr/bin/dbus-launch --exit-with-session x-session-manager
sheldon  16652     1  0 10:18 ?        00:00:00 /usr/bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session
sheldon  16655     1  0 10:18 ?        00:00:00 /usr/lib/at-spi2-core/at-spi-bus-launcher
sheldon  16659 16655  0 10:18 ?        00:00:00 /usr/bin/dbus-daemon --config-file=/etc/at-spi2/accessibility.conf --nofork --p
sheldon  16662     1  0 10:18 ?        00:00:00 /usr/lib/at-spi2-core/at-spi2-registryd --use-gnome-session
sheldon  16672 16625  0 10:18 tty1     00:00:00 /usr/lib/gnome-settings-daemon/gnome-settings-daemon
sheldon  16679     1  0 10:18 tty1     00:00:00 /usr/bin/gnome-keyring-daemon --start --components=pkcs11
sheldon  16694     1  0 10:18 ?        00:00:15 /usr/bin/pulseaudio --start
rtkit    16695     1  0 10:18 ?        00:00:00 /usr/lib/rtkit/rtkit-daemon
sheldon  16697     1  0 10:18 ?        00:00:00 /usr/lib/gvfs/gvfsd
sheldon  16702     1  0 10:18 ?        00:00:00 /usr/lib/gvfs/gvfsd-fuse /run/user/1000/gvfs -f -o big_writes
sheldon  16716     1  0 10:18 ?        00:00:00 /usr/lib/gvfs/gvfs-udisks2-volume-monitor
sheldon  16723     1  0 10:18 tty1     00:00:00 /bin/sh /usr/bin/start-pulseaudio-x11
sheldon  16724 16723  0 10:18 tty1     00:00:00 /usr/bin/xprop -root -spy
sheldon  16726     1  0 10:18 ?        00:00:00 /usr/lib/gvfs/gvfs-goa-volume-monitor
sheldon  16729     1  0 10:18 ?        00:00:00 /usr/lib/gnome-online-accounts/goa-daemon
sheldon  16735     1  0 10:18 ?        00:00:00 /usr/lib/telepathy/mission-control-5
sheldon  16738     1  0 10:18 ?        00:00:00 /usr/lib/gvfs/gvfs-gphoto2-volume-monitor
sheldon  16745     1  0 10:18 ?        00:00:00 /usr/lib/gvfs/gvfs-mtp-volume-monitor
sheldon  16749     1  0 10:18 ?        00:00:00 /usr/lib/gvfs/gvfs-afc-volume-monitor
sheldon  16753 16625  2 10:18 tty1     00:01:24 /usr/bin/gnome-shell
sheldon  16756     1  0 10:18 ?        00:00:00 /usr/lib/dconf/dconf-service
sheldon  16760     1  0 10:18 tty1     00:00:00 /usr/lib/gnome-settings-daemon/gsd-printer
sheldon  16773     1  0 10:18 ?        00:00:00 /usr/lib/gnome-shell/gnome-shell-calendar-server
sheldon  16777     1  0 10:18 ?        00:00:00 /usr/lib/evolution/evolution-source-registry
sheldon  16790 16625  0 10:18 tty1     00:00:00 zeitgeist-datahub
sheldon  16792 16625  0 10:18 tty1     00:00:00 /usr/lib/tracker/tracker-miner-user-guides
sheldon  16793 16625  0 10:18 tty1     00:00:00 /usr/lib/tracker/tracker-miner-fs
sheldon  16794 16625  0 10:18 tty1     00:00:00 /usr/bin/python /usr/share/system-config-printer/applet.py
sheldon  16799 16625  0 10:18 tty1     00:00:00 /usr/lib/tracker/tracker-miner-apps
sheldon  16800 16625  0 10:18 tty1     00:00:00 /usr/lib/evolution/3.12/evolution-alarm-notify
sheldon  16804     1  0 10:18 ?        00:00:01 /usr/lib/tracker/tracker-store
sheldon  16806 16625  0 10:18 tty1     00:00:00 nm-applet
sheldon  16809     1  0 10:18 ?        00:00:00 /usr/bin/zeitgeist-daemon
sheldon  16811 16625  0 10:18 tty1     00:00:00 /usr/lib/tracker/tracker-extract
sheldon  16838     1  0 10:18 ?        00:00:00 /usr/lib/evolution/evolution-calendar-factory
sheldon  16845     1  0 10:18 ?        00:00:00 /usr/lib/x86_64-linux-gnu/gconf/gconfd-2
sheldon  16864     1  0 10:18 ?        00:00:00 /usr/lib/gvfs/gvfsd-metadata
sheldon  16894     1  0 10:18 ?        00:00:00 /usr/lib/x86_64-linux-gnu/zeitgeist-fts
sheldon  16912 16894  0 10:18 ?        00:00:00 /bin/cat
sheldon  17025     1  0 10:19 ?        00:00:04 /usr/lib/gnome-terminal/gnome-terminal-server
sheldon  17143     1  0 10:19 ?        00:00:00 /usr/lib/dleyna-renderer/dleyna-renderer-service
sheldon  17149 17025  0 10:19 ?        00:00:00 gnome-pty-helper
sheldon  17150 17025  0 10:19 pts/0    00:00:00 bash
sheldon  17158     1  0 10:19 ?        00:00:00 /usr/lib/gvfs/gvfsd-burn --spawner :1.9 /org/gtk/gvfs/exec_spaw/0
sheldon  17581 16753 23 10:33 tty1     00:09:36 iceweasel
root     17777     2  0 10:48 ?        00:00:00 [kworker/1:2]
root     18308     2  0 10:57 ?        00:00:00 [kworker/0:1]
root     18576     2  0 11:00 ?        00:00:00 [kworker/u16:0]
root     18839     2  0 11:02 ?        00:00:00 [kworker/2:0]
root     18904 16508  0 11:02 pts/1    00:00:00 /bin/bash
root     18971     2  0 11:08 ?        00:00:00 [kworker/u16:2]
root     18984     2  0 11:08 ?        00:00:00 [kworker/1:0]
root     19038 16508  0 11:08 pts/2    00:00:00 /bin/bash
root     19065     2  0 11:08 ?        00:00:00 [kworker/3:1]
root     19076     2  0 11:08 ?        00:00:00 [kworker/2:2]
root     19131 16508  0 11:08 pts/3    00:00:00 /bin/bash
root     19184     2  0 11:08 ?        00:00:00 [kworker/0:0]
root     19260 16508  0 11:09 pts/4    00:00:00 /bin/bash
root     19493 16508  0 11:10 pts/5    00:00:00 /bin/bash
root     19590 16508  0 11:10 pts/6    00:00:00 /bin/bash
sheldon  19632 17150  0 11:14 pts/0    00:00:00 ps -ef
root     28362     2  0 Feb10 ?        00:00:00 [xfsalloc]
root     28363     2  0 Feb10 ?        00:00:00 [xfs_mru_cache]
root     28364     2  0 Feb10 ?        00:00:00 [xfslogd]
root     28367     2  0 Feb10 ?        00:00:00 [jfsIO]
root     28368     2  0 Feb10 ?        00:00:00 [jfsCommit]
root     28369     2  0 Feb10 ?        00:00:00 [jfsCommit]
root     28370     2  0 Feb10 ?        00:00:00 [jfsCommit]
root     28371     2  0 Feb10 ?        00:00:00 [jfsCommit]
root     28372     2  0 Feb10 ?        00:00:00 [jfsSync]
root     28395     2  0 Feb10 ?        00:00:00 [bioset]
avahi    30448     1  0 Feb10 ?        00:00:00 avahi-daemon: running [yosec.local]
avahi    30449 30448  0 Feb10 ?        00:00:00 avahi-daemon: chroot helper
root     31524     1  0 Feb10 ?        00:00:04 /usr/sbin/NetworkManager --no-daemon
root     31528     1  0 Feb10 ?        00:00:00 /usr/lib/policykit-1/polkitd --no-debug
root     31944     1  0 Feb10 ?        00:00:00 /usr/sbin/minissdpd -i 0.0.0.0
root     31979     1  0 Feb10 ?        00:00:00 /usr/sbin/ModemManager

但是,docker ps显示正在运行的容器。这是我有点困惑的地方:

sheldon@yosec:~$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
0929b795f4c0        ubuntu:latest       "/bin/bash"         26 minutes ago      Up 26 minutes                           modest_stallman
e2c70f53435c        ubuntu:latest       "/bin/bash"         27 minutes ago      Up 27 minutes                           cranky_bell
f4a2cfb5bdb8        ubuntu:latest       "/bin/bash"         28 minutes ago      Up 28 minutes                           sad_snyder
a5f930397758        ubuntu:latest       "/bin/bash"         29 minutes ago      Up 29 minutes                           nostalgic_poitras
5566e0e92e66        ubuntu:latest       "/bin/bash"         29 minutes ago      Up 29 minutes                           sharp_williams
2ca098323e64        ubuntu:latest       "/bin/bash"         35 minutes ago      Up 35 minutes                           clever_banach

任何想法出了什么问题?

我知道这可能不是最好的做事方式,但目前我只是跟着学习如何掌握Docker。

1 个答案:

答案 0 :(得分:1)

我不是100%确定您的本地环境是如何设置的,但是如果您在同一台计算机上运行ps -ef,那么pts / xx上的某些/ bin / bash可能就是您的容器

当您使用序列分离容器时,它不会杀死您的容器,它会分离。为了获得它的支持,您可以运行docker attach <container name or container id>

然而,即使我没有观看培训视频,您的例子也是错误的。你启动一个已经分离的容器(使用docker run -d),所以如果你在那之后尝试分离,它将不会影响docker。

为了启动附加容器以便稍后分离,您应该使用docker run -i -t ubuntu:latest /bin/bash代替。

使用-d启动容器时,泊坞窗应显示生成的ID,然后您可以将其附加到此,然后按键序列分离。

ID=$(docker -i -d ubuntu:latest /bin/bash)
# We are not in docker, still on our shell
docker attach $ID
# We are now attached to the container
# Exectute Ctrl-p Ctrl-Q
# The container is now detached and we are back to our shell