docker attach 和 exec 用法區別


attach 用法

$ sudo docker attach 665b4a1e17b6 #by ID
or
$ sudo docker attach loving_heisenberg #by Name
$ root@665b4a1e17b6:/#

就是講你當前terminal 的標准輸入、輸出、錯誤附加到制定的docker容器。
通俗來講就是 當前終端里可以看到 ENTRYPOINT/CMD 進程的輸出,你發送 CTRL-c 信號(輸入) 直接會終止docker 運行。
如果 ENTRYPOINT/CMD 沒有標准輸出,那么attach 上去了,什么也沒有,就好像假死了。

exec 用法
$ sudo docker exec -i -t 665b4a1e17b6 /bin/bash #by ID
or

$ sudo docker exec -i -t loving_heisenberg /bin/bash #by Name
$ root@665b4a1e17b6:/#

在docker 里面新開了一個bash 進程,在該終端可以通過命令和容器交互,類似於通過ssh和遠程linux server 交互。

所以大多數情況,可以直接使用 docker exec 命令。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM