新建文件docker-clear-log,放在/usr/local/bin/目录下,文件内容如下:
1 #!/bin/bash -e 2 3 if [[ -z $1 ]]; then 4 echo "No container specified" 5 exit 1 6 fi 7 8 if [[ "$(docker ps -aq -f name=^/${1}$ 2> /dev/null)" == "" ]]; then 9 echo "Container "$1" does not exist, exiting." 10 exit 1 11 fi 12 13 log=$(docker inspect -f '{{.LogPath}}' $1 2> /dev/null) 14 truncate -s 0 $log
赋予文件相应的权限,我仅仅给了它所有者读写执行的权限,其他人无权限执行:
chmod 700 /usr/local/bin/docker-clear-log
最后,执行
docker-clear-log <container>
即可清空相应容器的日志内容。
原文:https://www.axllent.org/docs/view/clear-docker-log/
(完)