一、Docker清理日誌命令
Docker在運行過程中會產生大量的日誌文件,如果不及時清理,會佔用大量的磁盤空間。下面介紹一些清理Docker日誌的命令。
$ docker logs --tail 數字 容器ID
這個命令可以查看特定容器的日誌,”–tail 數字”表示查看最後的多少條日誌。
$ docker logs --tail 數字 -f 容器ID
這個命令可以查看容器實時日誌,”–tail 數字”表示查看最後的多少條日誌。
$ docker inspect --format '{{.LogPath}}' 容器ID
這個命令可以查看容器的日誌文件路徑。
二、Docker清理容器日誌
Docker在容器退出後,會保留容器的日誌文件。如果你發現某個容器的日誌文件太大,可以使用下面的方法清理容器日誌。
$ docker logs --tail 數字 容器ID > /dev/null
這個命令可以將容器的日誌輸出到/dev/null,從而清空日誌文件。
三、Docker清理日誌腳本
下面是一個清理Docker日誌的bash腳本,可以定期清理Docker的日誌文件。
#!/bin/bash
# Clean Docker logs which are older than 7 days
find /var/lib/docker/containers/ -name '*-json.log' -mtime +7 -exec rm -f {} \;
這個腳本會刪除/var/lib/docker/containers/目錄下7天前的所有日誌文件。
四、Docker清理容器緩存
Docker在構建鏡像的過程中會產生一些緩存文件,這些文件會佔用大量的磁盤空間。下面是清理Docker容器緩存的命令。
$ docker system prune --all --force --volumes
–all表示刪除所有未使用的鏡像、容器和網絡,–force表示強制刪除,–volumes表示刪除未使用的數據卷。
五、Docker清理日誌文件腳本
下面是一個清理日誌文件的bash腳本,可以定期清理Docker的日誌文件。
#!/bin/bash
# Clean Docker log files which are older than 7 days
find /var/log/containers/ -name '*.log' -mtime +7 -exec rm -f {} \;
這個腳本會刪除/var/log/containers/目錄下7天前的所有日誌文件。
六、Docker清理佔用空間
有時候Docker會佔用大量的磁盤空間,如果你想清理Docker佔用的空間,可以使用下面的命令。
$ docker system prune --all --force
–all表示刪除所有未使用的鏡像、容器和網絡,–force表示強制刪除。
七、Docker清理鏡像
當你使用Docker構建鏡像的時候,會產生大量的鏡像文件。如果你想清理這些鏡像文件,可以使用下面的命令。
$ docker image prune --all --force
–all表示刪除所有未使用的鏡像,–force表示強制刪除。
八、Docker 清理
使用下面的命令可以清理所有未使用的鏡像、容器和網絡。
$ docker system prune --all --force --volumes
–all表示刪除所有未使用的鏡像、容器和網絡,–force表示強制刪除,–volumes表示刪除未使用的數據卷。
九、清理Docker緩存
Docker在構建鏡像的時候會產生一些緩存文件,這些文件會佔用大量的磁盤空間。下面是清理Docker緩存的命令。
$ docker builder prune --all --force
–all表示刪除所有未使用的鏡像,–force表示強制刪除。
十、Docker刪除日誌命令
Docker刪除所有容器的日誌文件。
$ sudo sh -c "truncate -s 0 /var/lib/docker/containers/*/*-json.log"
總結
本篇文章詳細介紹了Docker清理日誌的多種方法,包括命令、腳本和清理緩存。出現問題時,可以根據實際情況選擇合適的方法來清理Docker日誌。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/276101.html