Docker是現在最受歡迎的容器化技術,而日誌則是容器運行過程中一個不可或缺的重要元件。了解Docker日誌的檢視方法對於容器的正常運作和問題排查有著至關重要的作用。本文將會介紹一個通用的方法來檢視Docker容器的日誌。
一、Docker容器的日誌主要分為兩個部分:標準輸出和標準錯誤。標準輸出(stdout)用於容器輸出正常訊息,包括應用程式的標準輸出訊息和存取日誌訊息,標準錯誤(stderr)用於容器輸出錯誤訊息,包括應用程式的錯誤輸出訊息、異常訊息等。
二、常用查看Docker日誌的指令
這是檢視Docker日誌最常用的方法。此指令可以查看指定容器的標準輸出和標準錯誤輸出的最新日誌訊息,如下:
docker logs [OPTIONS] CONTAINER
OPTIONS參數說明:
-f:持續輸出日誌,按時間倒序顯示。
-t:顯示日誌時間戳記。
--tail [number]:僅顯示最後number行的信息,預設為所有。
範例:
# 查看最后100行容器日志 docker logs --tail 100 container_name # 持续查看容器日志 docker logs -f container_name # 显示时间戳 docker logs -t container_name
#journalctl是一個系統日誌管理工具,可以檢視系統日誌、容器日誌和服務日誌等。此指令可以查看指定container名稱的日誌訊息,如下:
journalctl CONTAINER_NAME=container_id
範例:
# 查看所有系统日志 journalctl # 查看指定docker容器日志 journalctl CONTAINER_NAME=mydocker
三、個別情況下容器的日誌無法顯示,需要手動進入容器內部查看,方法如下:
可以透過docker exec指令進入容器內,然後在容器內部查看日誌。如下:
docker exec -ti container_name /bin/bash
Docker將容器日誌輸出到/var/log/目錄下的檔案中,可以透過指令查看容器日誌。
# 查看启动日志 sudo tail -f /var/log/syslog | grep "docker/container_name" # 查看应用程序日志 sudo tail -f /var/log/docker/container_name/*.log
四、總結
Docker容器日誌的檢視是Docker的重要功能。在容器運行出現問題時,透過查看容器日誌可以及時定位問題。在日常維運中,我們應該積極地去使用Docker提供的日誌查看指令,並記得使用適當的方式輸出容器日誌。
以上是docker日誌怎麼看的詳細內容。更多資訊請關注PHP中文網其他相關文章!