1、我們為什么要進入到容器中?
我們經常需要進到容器里去做一些工作,比如查看日志、調試、啟動其他進程等
1、進入容器中的方法是什么?
a、docker attach container_id
ps:可通過 Ctrl+p 然后 Ctrl+q 組合鍵退出 attach 終端。
b、docker exec -it
ps:-it 以交互模式打開 pseudo-TTY,執行 bash,其結果就是打開了一個 bash 終端。
進入到容器中,容器的 hostname 就是其 “短ID”。
可以像在普通 Linux 中一樣執行命令。ps -elf 顯示了容器啟動進程while 以及當前的 bash 進程。
執行 exit 退出容器,回到 docker host。
3、attach和exec的區別是什么?
a、attach 直接進入容器 啟動命令的終端,不會啟動新的進程。
b、exec 則是在容器中打開新的終端,並且可以啟動新的進程。
c、如果想直接在終端中查看啟動命令的輸出,用 attach;其他情況使用 exec。
ps:如果只是為了查看啟動命令的輸出,可以使用 docker logs 命令,-f 的作用與 tail -f 類似,能夠持續打印輸出。