我曾经docker run -it以交互方式启动容器并docker run -d在后台启动它们。这两个选项似乎是排他的。但是,现在我注意到docker run -dit(或docker run -itd)很常见。那么区别是什么呢?何时-it真正需要与-d?
docker run -it
docker run -d
docker run -dit
docker run -itd
-it
-d
是的,有时候-it甚至有必要包括-d
ENTRYPOINT
bash
sh
docker run -d ubuntu:14.04将立即停止,原因bash是找不到要分配的任何伪终端。您必须指定-it以便bash或sh可以分配给伪终端。
docker run -d ubuntu:14.04
docker run -dit ubuntu:14.04
nano
docker run --name mongodb -d mongo docker exec -it mongodb bash apt-get update apt-get install nano nano somefile
会抛出错误
Error opening terminal: unknown.