Docker常用命令速查手册
引言
Docker作为领先的容器化平台,通过轻量级的容器技术彻底改变了软件开发、部署和运维的方式。它将应用及其依赖打包到标准化的单元中,确保了环境的一致性和可移植性。掌握Docker的命令行工具是与Docker交互的核心。本文整理了从镜像管理到容器操作等一系列最常用的Docker命令,是您日常工作的实用速查手册。
镜像管理
镜像是创建容器的基础模板。以下是管理镜像的核心命令。
1. docker search - 搜索镜像
在Docker Hub上查找官方或社区提供的镜像。
1 | docker search nginx # 搜索名为nginx的镜像 |
2. docker pull - 拉取镜像
从镜像仓库(默认为Docker Hub)下载镜像到本地。
1 | docker pull ubuntu:20.04 # 拉取Ubuntu 20.04版本的镜像 |
3. docker images - 列出本地镜像
查看本地已下载的所有镜像。
1 | docker images # 列出所有镜像 |
4. docker rmi - 删除本地镜像
删除一个或多个本地镜像。
1 | docker rmi nginx:latest # 删除指定版本的nginx镜像 |
5. docker build - 构建镜像
根据Dockerfile创建一个新的自定义镜像。
1 | docker build -t my-app:1.0 . # 在当前目录下根据Dockerfile构建名为my-app:1.0的镜像 |
容器生命周期管理
容器是镜像的运行实例。以下命令用于创建、运行、停止和删除容器。
6. docker run - 创建并启动容器
这是最核心的命令之一,用于从镜像创建并启动一个新容器。
1 | docker run -d --name my-nginx -p 8080:80 nginx |
7. docker ps - 列出容器
查看正在运行的容器。
1 | docker ps # 列出正在运行的容器 |
8. docker stop - 停止容器
优雅地停止一个或多个正在运行的容器。
1 | docker stop my-nginx # 停止名为my-nginx的容器 |
9. docker start - 启动已停止的容器
启动一个或多个已经被停止的容器。
1 | docker start my-nginx # 启动名为my-nginx的容器 |
10. docker restart - 重启容器
重启一个或多个容器。
1 | docker restart my-nginx # 重启名为my-nginx的容器 |
11. docker rm - 删除容器
删除一个或多个已停止的容器。
1 | docker rm my-nginx # 删除名为my-nginx的容器(必须已停止) |
容器交互与调试
当容器运行后,我们需要与之交互或查看其内部状态。
12. docker logs - 查看容器日志
获取容器的标准输出日志,是调试应用的关键。
1 | docker logs my-nginx # 查看my-nginx容器的所有日志 |
13. docker exec - 在运行中的容器内执行命令
用于进入正在运行的容器内部执行命令,非常适合调试。
1 | docker exec -it my-nginx /bin/bash |
14. docker inspect - 查看容器详细信息
以JSON格式返回容器的底层配置和状态信息。
1 | docker inspect my-nginx # 查看my-nginx容器的详细元数据 |
资源与系统管理
这些命令帮助您管理Docker系统本身的资源。
15. docker system df - 查看磁盘使用情况
显示Docker占用的磁盘空间,包括镜像、容器、构建缓存等。
1 | docker system df # 查看Docker磁盘使用概览 |
16. docker system prune - 清理未使用的资源
一键清理系统中的悬空镜像、已停止的容器、未使用的网络和构建缓存,是释放磁盘空间的利器。
1 | docker system prune # 清理未使用的资源 |
总结
Docker的命令行工具功能强大且设计直观。本文覆盖了从镜像拉取、容器运行到日志查看和系统清理的完整工作流。将这些命令融入您的日常开发流程,将极大地提升您的工作效率和应用交付的可靠性。
小贴士:使用docker --help可以查看全局帮助,docker <COMMAND> --help可以查看任何子命令的详细用法。
Happy Containerizing! 🐳
许可协议
本文由 Jco 原创,采用 CC BY-NC-SA 4.0 协议。转载请注明出处。
PERMALINK
https://jco.cc.cd/docker-command-cheatsheet/