docker run -it 和 docker exec -it

在学习Docker,关于命令参数中的-i 和 -t 理解的不是很深,做了些实验来测试。

 

docker run -it imageID [cmd]

这个是用镜像产生一个容器,并且和cmd程序做交互

-i表示交互式的,表示[cmd]是一个有用户输入的程序,比如/bin/bash  和 python 等等。

-t 产生一个终端。

所以说有-i就必须有-t,不然怎么输入呢。

这[cmd] 有的镜像是有默认值的,比如centos的镜像的默认值/bin/bash,而python镜像的默认值是python。

所以说[cmd]是可以不写的。

 

docker exec -it imageID cmd

这个是在正在运行容器中运行cmd程序,所以cmd是不能省略的。

-it和上面的道理是一样的。

如果输入:docker  exec -i centos /bin/bash

这样的没有输入终端,你输入的任何命令都不能执行

如果输入:docker exec -t cnetos /bin/bash

这样终端有了,但是没有交互输入,输入的信息还是不管用。

所以说-it一般来说是搭配使用的。当然你执行的命令需要用户输入,那么就不需要-it

 

docker attach:没有实验,猜测是 相当于 docker exec -it imageID cmd 

其中cmd是镜像的默认的命令。

 

 

  • 12
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
进入docker exec -it命令是用于在已经运行的容器中执行命令。其中,exec是执行命令的意思,-it参数表示以交互式的方式进入容器。在命令中需要指定容器的ID或名称,以及要执行的命令。例如,使用以下命令可以进入一个名为container_id的容器: docker exec -it container_id /bin/bash 这个命令将进入容器并打开一个交互式的bash终端,允许您在容器中执行命令和操作文件系统。您可以在终端中执行任何命令,就像在本地计算机上一样。注意,您需要在宿主机上安装Docker,并且容器必须处于运行状态才能使用这个命令。 另外还可以使用docker attach命令来进入容器,这个命令与docker exec类似,也可以进入容器并与其交互。使用docker attach命令时,不需要指定要执行的命令,而是直接进入容器的终端。例如,可以使用以下命令进入一个名为container_id的容器: docker attach container_id [2] 需要注意的是,使用docker attach命令进入容器时,如果在容器中按下Ctrl+C会导致容器停止运行。因此,如果只需要执行命令而不需要保持交互式会话,建议使用docker exec命令。 希望这个解答对您有帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [dockerexc:在所选容器上运行docker exec -it container_id binbash](https://download.csdn.net/download/weixin_42113754/18572638)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [docker run -it 和 docker exec -it](https://blog.csdn.net/wdadas/article/details/107129528)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [docker exec -it tomcat01 ip addr](https://blog.csdn.net/m0_37800387/article/details/124163197)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值