Docker attach V/S Docker exec

docker exec和docker attach都是进入容器的命令但是它么两个有一些区别你们知道吗?

docker attach 语法

attach是Docker自带的命令,命令的语法为:

复制代码
docker attach 容器ID

docker exec 语法

从Docker的1.3版本起,Docker提供了更加方便的工具exec命令,可以在运行容器内直接执行任意命令。命令语法为:

复制代码
docker exec -it 容器ID bash

两者区别

  • 当多个窗口同是attach到同一个容器的时候,所有窗口都会同步显示;当某个窗口因命令阻塞时,其他窗口也无法执行操作。
  • 可以使用 docker exec -it 容器id /bin/bash 进入容器并开启一个新的bash终端。 使用exit或者Ctrl+d退出容器终端时,不会导致容器的停止。
  • 使用 docker attach 容器id 进入正在执行容器,不会启动新的终端, 使用exit或者Ctrl+d退出容器时,会导致容器的停止,但是使用Ctrl+p+q退出后容器不会停止。
相关推荐
爱学习 爱分享12 小时前
k8s 开启防火墙,容器内部无法访问外部 ip
tcp/ip·容器·kubernetes
养肥胖虎12 小时前
Docker学习笔记:后端、数据库和反向代理怎么一起跑起来
后端·nginx·docker·postgresql·go·部署
叶帆13 小时前
【YFIOs】Docker方式部署
运维·docker·容器
小猿姐13 小时前
Clickhouse Kubernetes Operator 实测:哪种方案更适合生产?
运维·数据库·kubernetes
岳来14 小时前
Docker 的 --privileged 特权模式学习
docker·容器·--privileged
彩色的黑'''14 小时前
[root@localhost ~]#,Linux系统的命令提示符为啥现在变成-bash-4.2#了,哪里设置的
linux·运维·bash
树下水月14 小时前
文件分片上传接口(Easyswoole)被nginx拦截,并返回状态码400和408的抓包排查过程
运维·nginx
南境十里·墨染春水15 小时前
linux学习进展 shell编程
linux·运维·学习
goyeer15 小时前
【ITIL4】32服务实践 - 问题管理(Problem Management)
linux·运维·服务器·企业数字化·it管理·itil·it治理
cen__y16 小时前
Linux11(网络编程)
linux·运维·服务器·c语言·网络·网络协议·tcp/ip