美國第三任**(托馬斯.傑弗遜)曾說過:「不要因為別的人相信或否定了什麼東西,你也就去相信它或否定它。上帝贈予你乙個用來判斷真理和謬誤的頭腦。那你就去運用它吧!」。
在沒有陪你奔跑的日子,努力加油哦!
正常使用docker部署測試環境程式,一直部署不上去。最後發現docker容器執行產生日誌過多,導致了系統儲存爆滿,服務無法正常訪問。(服務中開啟了最高日誌級別debugger)。
日誌分類
日誌分為兩類,一類是docker引擎日誌;另一類是容器日誌。 系統
日誌位置
ubuntu(14.04)
/var/log/upstart/docker.log
ubuntu(16.04)
journalctl -u docker.service
centos 7/rhel 7/fedora
journalctl -u docker.service
coreos
journalctl -u docker.service
opensuse
journalctl -u docker.service
osx~/library/containers/com.docker.docker/data/com.docker.driver.amd64-linux/log/docker.log
debian gnu/linux 7
/var/log/daemon.log
debian gnu/linux 8
journalctl -u docker.service
boot2docker
/var/log/docker.log
查詢全部容器的日誌檔案
find /var/lib/docker/containers -name *
.log
檢視日誌位置
docker inspect --format=
'}'
實時查詢內容
tail -f `docker inspect --format=
'}'`
檢視容器日誌大小 — logs_file_size.sh
echo
"*****=== docker containers logs file size *****==="
logs=
$(find /var/lib/docker/containers/ -name *-json.log)
for log in
$logs
dols -lh $log
done
清理日誌 — clean_containers_logs.sh
echo
"*****=== start clean docker containers logs *****==="
logs=
$(find /var/lib/docker/containers/ -name *-json.log)
for log in
$logs
doecho
"clean logs : $log"
cat /dev/null >
$log
done
echo
"*****=== end clean docker containers logs *****==="
cat /dev/null > log
表示
將log 表示將
log表示將
log的檔案內容清空
可通過 sh logs_file_size.sh 和 sh clean_containers_logs.sh 執行兩個shell指令碼。
參考文章:
Docker容器日誌檢視與清理
全域性設定 參考文章 docker容器日誌導致主機磁碟空間滿了。docker logs f container name噼里啪啦一大堆,很占用空間,不用的日誌可以清理掉了。在linux上,容器日誌一般存放在 var lib docker containers container id 下面,以jso...
Docker容器日誌檢視與清理的方法
1.問題 docker容器日誌導致主機磁碟空間滿了。docker logs f container name噼里啪啦一大堆,很占用空間,不用的日誌可以清理掉了。2.解決方法 2.1 找出docker容器日誌 在linux上,容器日誌一般存放在 var lib docker containers co...
Docker容器日誌檢視與清理(親測有效)
docker容器日誌導致主機磁碟空間滿了。docker logs f container name噼里啪啦一大堆,很占用空間,不用的日誌可以清理掉了。在linux上,容器日誌一般存放在 var lib docker containers container id 下面,以json.log結尾的檔案 ...