实际上,docker run

编程入门 行业动态 更新时间:2024-10-28 10:23:29
本文介绍了实际上,docker run -dit(-itd)与docker run -d之间有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我已经使用 docker run -it 交互地启动容器,并使用 docker run -d 来启动容器背景。这两个选项似乎是排他的。但是,现在我注意到 docker run -dit (或 docker run -itd )非常普遍。那么区别是什么呢?当真的需要-它和 -d 吗?

I've used docker run -it to launch containers interactively and docker run -d to start them in background. These two options seemed exclusive. However, now I've noticed that docker run -dit (or docker run -itd) is quite common. So what is the difference? When -it is really needed together with -d?

推荐答案

是的,有时候,即使您 -d

Yes, sometimes, it's necessary to include -it even you -d

  • 当 ENTRYPOINT 是 bash 或 sh

    docker run -d ubuntu:14.04 将立即停止,因为 bash 找不到要分配的任何伪终端。您必须指定 -it ,以便 bash 或 sh 可以分配给一个伪终端。

    docker run -d ubuntu:14.04 will immediately stop, cause bash can't find any pseudo terminal to be allocated. You have to specify -it so that bash or sh can be allocated to a pseudo terminal.

    docker run -dit ubuntu:14.04

  • 如果要使用 nano 或 vim 和将来的任何容器,您必须在图像开始时指定 -it 。否则会出错。例如,

  • If you want to use nano or vim with any container in the future, you have to specify -it when the image starts. Otherwise you'll get error. For example,

    docker run --name mongodb -d mongo docker exec -it mongodb bash apt-get update apt-get install nano nano somefile

    它将抛出错误

    错误打开终端:未知。

  • 更多推荐

    实际上,docker run

    本文发布于:2023-11-25 22:19:19,感谢您对本站的认可!
    本文链接:https://www.elefans.com/category/jswz/34/1631578.html
    版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
    本文标签:docker   run

    发布评论

    评论列表 (有 0 条评论)
    草根站长

    >www.elefans.com

    编程频道|电子爱好者 - 技术资讯及电子产品介绍!