我正在 bash 腳本中試驗 Docker 的一種奇怪行為。讓我們看看這兩個例子:
logs-are-showed() {
docker rm -f mybash &>/dev/null
docker run -it --rm -d --name mybash bash -c "echo hello; tail -f /dev/null"
docker logs mybash
}
# usage:
# $ localtunnel 8080
localtunnel() {
docker rm -f localtunnel &>/dev/null
docker run -it -d --network host --name localtunnel efrecon/localtunnel --port $1
docker logs localtunnel
}
在第一個函式logs-are-showed 中,命令docker logs回傳容器mybash的日志
在第二個函式localtunnel 中,該命令docker logs不回傳任何內容。呼叫localtunnel函式后,如果我從腳本外部請求容器日志,它會正確顯示日志。
為什么會發生這種情況?
uj5u.com熱心網友回復:
流程需要時間來做出反應。他們可能會開始一個程序之后沒有日志-它不寫任何東西還。稍等一會。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/382635.html
上一篇:計算數千個檔案的組合檔案大小
