檢視容器記錄
目錄
docker logs
命令會顯示執行中容器記錄的資訊。 docker service logs
命令會顯示參與服務的所有容器記錄的資訊。記錄的資訊和記錄的格式幾乎完全取決於容器的端點命令。
根據預設,docker logs
或 docker service logs
會顯示命令的輸出,就像您在終端機中以互動方式執行命令時一樣。Unix 和 Linux 命令在執行時通常會開啟三個 I/O 串流,稱為 STDIN
、STDOUT
和 STDERR
。 STDIN
是命令的輸入串流,可能包含來自鍵盤的輸入或來自另一個命令的輸入。 STDOUT
通常是命令的正常輸出,而 STDERR
通常用於輸出錯誤訊息。根據預設,docker logs
會顯示命令的 STDOUT
和 STDERR
。如需深入瞭解 I/O 和 Linux,請參閱 Linux 文件計畫關於 I/O 重新導向的文章,並且已停用 "雙重記錄",則 docker logs
可能不會顯示有用的資訊。
STDOUT
和 STDERR
。在第一種情況下,您的記錄會以其他方式處理,您可以選擇不使用 docker logs
。在第二種情況下,官方 nginx
映像檔顯示了一種解決方法,而官方 Apache httpd
映像檔則顯示了另一種解決方法。
官方 nginx
映像檔會從 /var/log/nginx/access.log
建立到 /dev/stdout
的符號連結,並從 /var/log/nginx/error.log
建立到 /dev/stderr
的另一個符號連結,覆寫記錄檔並導致記錄傳送到相關的特殊裝置。請參閱 Dockerfile