为了账号安全,请及时绑定邮箱和手机立即绑定

Docker 容器后台运行和前台运行的区别?

Docker 容器后台运行和前台运行的区别?

元芳怎么了 2018-09-11 18:14:58
Docker 容器后台运行和前台运行的区别
查看完整描述

1 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

Docker 容器后台运行和前台运行的区别
Posted by simapple on Tuesday, 19 August 2014
后台运行vs前台运行
当你启动一个docker 容器的时候,第一件事就是要确认你要在前台运行还是在后台运行:
-d=false:Detached mode:Run container in the background,printnew container id

后台运行 (-d)
后台运行直接指定 (-d=true or just -d),这样的话所有的操作类似网络连接,共享操作等等都不会再接受命令行的命令控制。你就要使用attach命令 来进入一个容器,再管理它,注意当你attach链接到一个容器的时候,你就不能再使用 rm 来删除这个容器。
前台运行
当你不指定-d时,就是在前台运行, docker run 可以启动一个进程,并且通过console 连接进程的标准输入 输出和标准错误。它甚至可以伪装成一个TTY,发送信号量。所有这一切都是可以配置的。
-a=[]:Attach to `STDIN`,`STDOUT`and/or`STDERR`-t=false:Allocate a pseudo-tty
--sig-proxy=true:Proxify all received signal to the process (even in non-tty mode)-i=false:Keep STDIN open even ifnot attached

如果你不想使用 -a 来连接容器的所有输入输出,那么你可以指定你希望接受的流STDIN, STDOUT, STDERR):
$ docker run -a stdin -a stdout -i -t ubuntu /bin/bash

在交互式的情况下,你最希望得到一个类似TTY那样的shell,你可以 指定 -i -t
taxonomyextra:
docker

查看完整回答
反对 回复 2018-09-23
  • 1 回答
  • 0 关注
  • 934 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信