
在服务器上使用 Docker,常用命令按功能分类整理如下,涵盖镜像、容器、网络、卷、系统信息及日常运维。
一、镜像管理
| 命令 | 说明 |
|---|---|
docker images 或 docker image ls |
列出本地镜像 |
docker pull <镜像名>[:标签] |
拉取镜像(如 docker pull ubuntu:22.04) |
docker build -t <镜像名> <上下文路径> |
根据 Dockerfile 构建镜像 |
docker push <镜像名> |
推送镜像到仓库 |
docker rmi <镜像ID或名称> |
删除本地镜像 |
docker tag <源镜像> <目标镜像> |
为镜像打标签 |
docker save -o <文件名>.tar <镜像名> |
导出镜像为 tar 文件 |
docker load -i <文件名>.tar |
从 tar 文件导入镜像 |
二、容器管理
| 命令 | 说明 |
|---|---|
docker ps |
列出运行中的容器 |
docker ps -a |
列出所有容器(包括停止的) |
docker run [选项] <镜像名> [命令] |
创建并启动一个容器(常用 -d 后台运行,-p 端口映射,-v 挂载卷,--name 命名) |
docker start <容器名或ID> |
启动一个已停止的容器 |
docker stop <容器名或ID> |
停止运行中的容器 |
docker restart <容器名或ID> |
重启容器 |
docker rm <容器名或ID> |
删除容器(需先停止) |
docker exec -it <容器名或ID> /bin/bash |
进入正在运行的容器(交互式 shell) |
docker logs [-f] <容器名或ID> |
查看容器日志(-f 持续输出) |
docker top <容器名或ID> |
查看容器内的进程 |
docker cp <容器名:路径> <宿主机路径> |
从容器复制文件到宿主机 |
docker cp <宿主机路径> <容器名:路径> |
从宿主机复制文件到容器 |
docker commit <容器名或ID> <新镜像名> |
将容器保存为新镜像(不推荐,应使用 Dockerfile) |
docker diff <容器名或ID> |
查看容器文件系统的变化 |
三、网络管理
| 命令 | 说明 |
|---|---|
docker network ls |
列出所有网络 |
docker network create <网络名> |
创建自定义网络 |
docker network inspect <网络名> |
查看网络详情 |
docker network connect <网络名> <容器名> |
将容器连接到网络 |
docker network disconnect <网络名> <容器名> |
断开容器与网络 |
docker network rm <网络名> |
删除网络 |
docker port <容器名> |
查看容器端口映射 |
四、卷管理(数据持久化)
| 命令 | 说明 |
|---|---|
docker volume ls |
列出所有卷 |
docker volume create <卷名> |
创建卷 |
docker volume inspect <卷名> |
查看卷详情 |
docker volume rm <卷名> |
删除卷 |
docker volume prune |
删除所有未使用的卷 |
五、系统信息与清理
| 命令 | 说明 |
|---|---|
docker info |
显示 Docker 系统信息(版本、内核、容器数等) |
docker version |
显示 Docker 客户端和服务器版本 |
docker system df |
查看镜像、容器、卷的磁盘占用 |
docker system prune |
清理停止的容器、未使用的镜像、网络等(谨慎使用) |
docker system prune -a |
更彻底的清理(包括未被使用的镜像) |
docker stats |
实时查看容器资源使用(CPU、内存等) |
docker events |
查看 Docker 守护进程事件流 |
六、Docker Compose(多容器编排)
如果安装了 docker-compose(或新版 docker compose 插件):
| 命令 | 说明 |
|---|---|
docker-compose up -d 或 docker compose up -d |
启动服务(-d 后台运行) |
docker-compose down |
停止并删除容器、网络 |
docker-compose logs |
查看服务日志 |
docker-compose exec <服务名> /bin/bash |
进入指定服务的容器 |
docker-compose ps |
查看服务状态 |
docker-compose build |
构建服务镜像 |
docker-compose pull |
拉取服务依赖的镜像 |
docker-compose restart |
重启所有服务 |
七、实用组合技巧
- 删除所有停止的容器 :
docker container prune - 删除所有未使用的镜像 :
docker image prune -a - 一键清理所有未使用的资源 :
docker system prune -a --volumes(谨慎操作) - 批量操作 :结合
xargs,例如删除所有名中含test的容器:docker ps -a | grep test | awk '{print $1}' | xargs docker rm
掌握这些常用命令,基本可以覆盖日常的 Docker 运维、开发测试和部署工作。如果需要针对某个场景(如挂载卷、网络配置)的详细示例,可以进一步说明。