Docker运维常用命令集合

  1. 清理
  2. 查询
  3. docker进程日志

清理

删除所有dangling数据卷(即无用的volume):

docker volume prune

删除已停止的容器、dangling 镜像、未被容器引用的 network 和构建过程中的 cache

docker system prune

删除所有dangling镜像(即无tag的镜像):

for i in $(docker images|grep "none"|awk '{print $3}');do docker rmi -f $i;done

删除所有关闭的容器:

docker ps -a | grep Exit | cut -d ' ' -f 1 | xargs docker rm

清空容器日志:

#!/bin/bash

for container_id in $(docker ps -a --filter="name=$name" -q); do
    file=$(docker inspect -f '{{.LogPath}}' $container_id)
    sudo ls -lh $file
    if [ -f $file ]; then
        echo $file
        cat /dev/null >$file
    fi
done

查询

对应docker run –ip=,获取所有容器设置的IP地址

for i in $(docker ps | grep -v CON | awk '{print $1}'); do
    echo $i
    docker inspect $i | grep IPAddress | tail -n 1
done

docker进程日志

journalctl /usr/bin/dockerd

转载请注明来源, 欢迎对文章中的引用来源进行考证, 欢迎指出任何有错误或不够清晰的表达, 可以邮件至 chinaops666@gmail.com
相册