[Linux] docker 相关命令
docker 容器可以理解为在沙盒中运行的进程。这个沙盒包含了该进程运行所必须的资源,包括文件系统、系统类库、shell 环境等等。但这个沙盒默认是不会运行任何程序的。你需要在沙盒中运行一个进程来启动某一个容器。这个进程是该容器的唯一进程,所以当该进程结束的时候,容器也会完全的停止。
基础命令
- 查看docker版本
docker version
- 显示docker系统的信息
docker info
- 日志信息
docker logs
- 故障检查
service docker status
- 启动关闭docker
sudo service docker start|stop
容器信息
- 查看当前运行的容器
docker ps
- 查看全部容器
docker ps -a
- 查看全部容器的id和信息
docker ps -a -q
- 查看全部容器占用的空间
docker ps -as
- 查看一个正在运行容器进程,支持 ps 命令参数
docker top
- 查看容器的示例id
sudo docker inspect -f '{{.Id}}' [id]
- 检查镜像或者容器的参数,默认返回 JSON 格式
docker inspect
- 返回 ubuntu:14.04 镜像的 docker 版本
docker inspect --format '{{.DockerVersion}}' ubuntu:14.04
docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' ubuntu:14.04
容器清理
Docker
占用的磁盘空间查看:
docker system df
返回的结果如下:
TYPE TOTAL ACTIVE SIZE RECLAIMABLE Images 33 8 16.8GB 16.39GB (97%) Containers 9 1 37.43kB 36.44kB (97%) Local Volumes 7 2 0B 0B Build Cache 507 0 21.19GB 21.19GB
注意:
Reclaimable
就是可以恢复的大小,它是通过从总图像大小中减去活动图像的大小来计算的。
接下来就可以使用以下方法来清理:
- 清理停止的容器:使用
docker rm
命令清理停止的容器,命令格式为:docker rm <container_id>
。 - 清理未使用的镜像:使用
docker image prune
命令清理未使用的镜像,命令格式为:docker image prune
。 - 清理无用的数据卷:使用
docker volume prune
命令清理无用的数据卷,命令格式为:docker volume prune
。 - 清理未使用的网络:使用
docker network prune
命令清理未使用的网络,命令格式为:docker network prune
。 - 清理
Docker
缓存:使用docker builder prune
命令清理Docker缓存,命令格式为:docker builder prune
。 - 清理
Docker
日志:使用docker logs
命令查看容器日志,确认无用日志后,使用truncate
命令清空日志文件,命令格式为:truncate -s 0 <logfile>
。
- 清理无用镜像:
docker image prune -a
- 清理无标签的镜像:
docker rmi $(docker images -f "dangling=true" -q)
- 清理缓存文件:
docker system prune --all --force --volumes
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
评论已关闭