1、查看当前容器的状态
docker stats --no-stream
2、查看当前容器名对应的ip和映射端口
docker inspect -f='{{.Name}} {{.NetworkSettings.IPAddress}} {{.HostConfig.PortBindings}}' $(docker ps -aq)
3、查看docker日志
docker logs -f -t --tail 100 nginx
4、查看挂载
docker inspect container_name | grep Mounts -A 20
5、打包镜像和导入镜像
1)打包镜像
docker save $(docker images | grep -v REPOSITORY | awk 'BEGIN{OFS=":";ORS=" "}{print $1,$2}') -o images.tar
2)导入镜像
docker load -i images.tar
6、如果需要远程操作docker,可以增加tcp连接方式
vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd --graph /data/docker -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375
备注:--graph指定数据目录
7、容器日志清理脚本
for file in `find /data/docker/containers/ -type f -size +1G -name "*.log"`
do >$file
done
for file in `find /data/docker/overlay2/ -type f -size +1G -name "*.log"`
do >$file
done
8、docker镜像重新打标签
docker pull java:8 #下载原镜像
docker tag java:8 harbor.redair.cn/iaoc/java:8
9、容器停止和删除
1)停止所有容器
docker stop $(docker ps -q)
2)删除所有停止容器
docker rm $(docker ps -aq)
3)停止并删除所有运行容器
docker stop $(docker ps -q) & docker rm $(docker ps -aq)
4)停止和删除指定容器
docker stop `docker ps -a|grep new|awk '{ print $2 }'|awk -F : '{ print $1 }'
docker rm `docker ps -a|grep new|awk '{ print $2 }'|awk -F : '{ print $1 }'`
docker stop `docker ps -a|grep new|awk '{ print $2 }'|awk -F : '{ print $1 }'
docker rm `docker ps -a|grep new|awk '{ print $2 }'|awk -F : '{ print $1 }'`
5)docker kill
强制杀死容器
10、查看容器进程
docker top
11、容器复制粘贴
docker cp rancher:/app.jar ~/
12、进入容器执行命令
docker exec -it ms-gateway printenv
docker exec -it ms-gateway /bin/bash
13、删除指定镜像
docker rmi `docker images|awk '{ print $3 }'` #删除所有不再使用的镜像
docker image ls|grep shopping|awk '{ print $3 }'|xargs docker rmi
docker images |grep shopping|awk '{print "docker rmi " $3 }'|sh
docker rmi `docker images|grep shopping|awk '{ print $3 }'`
14、docker info
查看docker的基本信息,包括存储目录
15、docker events
docker events -f container=nginx #监视容器事件,容器名或ID