docker常用命令

Docker 常用命令大全

一、镜像(Image)管理

镜像就像是软件的安装包或模板。

命令 描述 示例
docker images docker image ls 列出本地所有镜像 docker images
docker search <名称> 从仓库搜索镜像 docker search nginx
docker pull <镜像名>:<标签> 下载镜像 (不指定标签则默认为 latest docker pull nginx:alpine
docker rmi <镜像ID或名> 删除本地镜像 docker rmi nginx
docker image prune 清理未被使用的镜像(悬空镜像) docker image prune
docker build -t <标签> . 根据 Dockerfile 构建镜像. 代表当前目录) docker build -t my-app:1.0 .

二、容器(Container)管理

容器是从镜像运行起来的实例。

命令 描述 示例
docker run [选项] <镜像> 创建并启动一个新容器 docker run -d -p 80:80 nginx
docker start <容器名/ID> 启动一个已停止的容器 docker start my_nginx
docker stop <容器名/ID> 停止一个运行中的容器(优雅停止) docker stop my_nginx
docker restart <容器名/ID> 重启容器 docker restart my_nginx
docker rm <容器名/ID> 删除一个已停止的容器 docker rm my_nginx
docker container prune 删除所有已停止的容器 docker container prune
docker ps 列出正在运行的容器 docker ps
docker ps -a 列出所有容器(包括已停止的) docker ps -a
docker logs <容器名/ID> 查看容器的日志输出 docker logs my_nginx
docker logs -f <容器名/ID> 实时跟踪(跟随)日志输出 docker logs -f my_nginx
docker exec -it <容器名/ID> <命令> 在运行中的容器内执行命令 docker exec -it my_nginx /bin/bash

三、网络(Network)管理

命令 描述 示例
docker network ls 列出所有网络 docker network ls
docker network create <网络名> 创建一个新网络 docker network create my_net
docker network inspect <网络名> 查看网络详细信息 docker network inspect bridge

四、数据卷(Volume)管理

数据卷用于持久化存储数据。

命令 描述 示例
docker volume ls 列出所有数据卷 docker volume ls
docker volume create <卷名> 创建一个数据卷 docker volume create my_data
docker volume rm <卷名> 删除一个数据卷 docker volume rm my_data
docker volume prune 清理未被使用的数据卷 docker volume prune

五、系统与信息

命令 描述 示例
docker info 显示 Docker 系统信息 docker info
docker version 显示 Docker 版本信息 docker version
docker stats 实时显示容器资源使用统计 docker stats
docker system df 查看 Docker 磁盘使用情况 docker system df

六、Docker Compose 常用命令

用于管理多容器应用。

命令 描述 示例
docker compose up 创建并启动所有服务 docker compose up
docker compose up -d 在后台创建并启动所有服务 docker compose up -d
docker compose down 停止并删除所有容器、网络 docker compose down
docker compose ps 列出本项目下的所有容器 docker compose ps
docker compose logs 查看所有服务的日志 docker compose logs
docker compose logs -f <服务名> 实时跟踪特定服务的日志 docker compose logs -f web
docker compose exec <服务名> <命令> 在指定服务的容器中执行命令 docker compose exec db mysql -u root -p

命令中的常用选项(Flags)释义

选项 全称 含义 示例
-d --detach 后台运行容器 docker run -d nginx
-it -i -t 交互式运行 (分配伪终端,通常与 /bin/bash 连用) docker run -it ubuntu /bin/bash
-p --publish 端口映射(主机端口:容器端口) docker run -p 8080:80 nginx
-v --volume 挂载数据卷或目录 docker run -v /host/data:/container/data nginx
-e --env 设置环境变量 docker run -e MY_VAR=value nginx
--name 为容器指定一个名称 docker run --name my_nginx nginx
--rm 容器退出时自动删除(常用于测试) docker run --rm alpine echo "hello"

🚀 最常用命令总结(快速上手)

  1. 看状态 : docker ps (看容器), docker images (看镜像)
  2. 拉镜像 : docker pull <名字>
  3. 启容器 : docker run -d -p ... --name ... <镜像名>
  4. 停容器 : docker stop <名字>
  5. 进容器 : docker exec -it <名字> /bin/bash
  6. 看日志 : docker logs -f <名字>
  7. 删容器 : docker rm <名字>
  8. 删镜像 : docker rmi <名字>

建议: 将这份列表保存下来,作为日常操作的速查手册。

相关推荐
key_Go2 小时前
03.镜像
运维·服务器·网络·docker
Anthony_2312 小时前
Dockerfile构建镜像以及网络
linux·运维·服务器·网络·docker
Brookty3 小时前
【算法】滑动窗口(一)-长度最小的子数组
java·学习·算法·力扣·滑动窗口
JAVA学习通3 小时前
微服务项目->在线oj系统(Java-Spring)----6.0
java·开发语言·spring
袁煦丞 cpolar内网穿透实验室3 小时前
Remote JVM Debug远程给Java程序“做手术”!cpolar内网穿透实验室第626个成功挑战
java·开发语言·jvm·远程工作·内网穿透·cpolar
我是华为OD~HR~栗栗呀3 小时前
22届考研(华为oD)-Java面经
java·c++·后端·python·考研·华为od·华为
冻咸鱼3 小时前
LinkedList与链表
java·数据结构·链表
Yan-英杰3 小时前
Amazon SES + NestJS 实战:零成本打造高送达率邮箱验证方案
java·服务器·前端·网络·数据库·ai
青云交4 小时前
Java 大视界 -- Java 大数据机器学习模型在元宇宙虚拟场景智能交互中的关键技术
java·机器学习·边缘计算·元宇宙·多模态融合·智能交互·情感计算