在服务器上使用 Docker,常用命令按功能分类整理

在服务器上使用 Docker,常用命令按功能分类整理如下,涵盖镜像、容器、网络、卷、系统信息及日常运维。


一、镜像管理

命令 说明
docker imagesdocker 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 -ddocker 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 运维、开发测试和部署工作。如果需要针对某个场景(如挂载卷、网络配置)的详细示例,可以进一步说明。

相关推荐
sofaraway132 小时前
未能下载 VS Code 服务器(Failed to fetch)解决办法
运维·服务器
迷海2 小时前
docker命令大全
java·docker·eureka
云栖梦泽2 小时前
Linux内核与驱动:3.驱动模块传参,内核模块符号导出
linux·服务器·c++
小王C语言2 小时前
【Ext系列文件系统】————磁盘、分盘/分区/分组、软硬连接
运维
默|笙2 小时前
【Linux】进程信号(4)_信号捕捉_内核态与用户态
linux·运维·服务器
七夜zippoe2 小时前
云原生Java应用部署:将Spring Boot应用迁移至Kubernetes完整指南
java·spring boot·docker·云原生·kuberbertes
supersolon2 小时前
PVE9安装32位爱快路由(ikuai)
linux·运维·网络
深圳市恒讯科技2 小时前
OpenClaw 2026安全指南
运维·服务器·安全
海兰2 小时前
使用 TypeScript 创建 Elasticsearch MCP 服务器
服务器·elasticsearch·typescript·mcp