Docker 常用命令

一、 镜像管理相关的命令

Docker 镜像是容器的基础。

拉取镜像

复制代码
docker pull [镜像名称]:[标签]
  • 如果不指定标签,默认拉取 latest 版本

列出本地所有镜像

复制代码
docker images
  • -a: 显示所有镜像(包括中间层镜像)

  • -q: 只显示镜像 ID

根据 Dockerfile 构建镜像

复制代码
docker build -t [镜像名称]:[标签] [Dockerfile路径]
示例:docker build -t myapp:1.0 .
  • -t 指定镜像名称和标签

  • . 表示使用当前目录下的 Dockerfile

删除本地镜像

复制代码
docker rmi [镜像名称或ID]
  • -f: 强制删除,即使镜像正在被容器使用。

二、 容器管理命令

容器是 Docker 的核心。

创建并运行新容器

复制代码
docker run [选项] [镜像名称] [命令]
  • -d: 后台运行

  • -p 主机端口:容器端口: 端口映射

  • --name: 指定容器名称

  • -it: 交互式运行(常用于启动 shell)

列出正在运行的容器

复制代码
docker ps
  • -a: 显示所有容器(包括停止的)

  • -q: 只显示容器 ID

停止运行中的容器

复制代码
docker stop [容器名称或ID]

启动已停止的容器

复制代码
docker start [容器名称或ID]

重启容器

复制代码
docker restart [容器名称或ID]

删除容器

复制代码
docker rm [容器名称或ID]
  • -f: 强制删除正在运行的容器。

在运行中的容器内执行命令

复制代码
docker exec [选项] [容器名称或ID] [命令]
示例:docker exec -it my-nginx bash
  • -it 表示交互式终端,进入容器内的 bash 环境

查看容器日志

复制代码
docker logs [容器名称或ID]

三、 网络管理和存储相关命令

列出所有网络

复制代码
docker network ls

创建一个新的网络

复制代码
docker network create [网络名称]

将容器连接到指定网络

复制代码
docker network connect [网络名称] [容器名称或ID]

列出所有卷

复制代码
docker volume ls

创建新的卷

复制代码
docker volume create [卷名称]

运行容器时挂载卷或目录

复制代码
docker run -v [主机路径或卷名称]:[容器路径] [镜像名称]

四、 实用组合命令****

清理无用资源

复制代码
docker system prune

查看容器资源使用情况

复制代码
docker stats

批量删除容器

复制代码
docker rm -f $(docker ps -aq)

为现有镜像添加标签

复制代码
docker tag [源镜像] [新镜像名称]:[新标签]

推送到远程仓库

复制代码
docker push [镜像名称]:[标签]

查看容器内运行的进程

复制代码
docker top [容器ID或名称]

重命名容器

复制代码
docker rename [旧名称] [新名称]

在主机和容器之间复制文件或目录​​​​​​​

复制代码
docker cp [源路径] [目标路径]
主机 → 容器:docker cp ./myfile.txt my-nginx:/app/
容器 → 主机:docker cp my-nginx:/app/myfile.txt ./

将一个或多个镜像保存为 tar 文件

复制代码
docker save -o [输出文件] [镜像名称]

从 tar 文件加载镜像

复制代码
docker load -i [输入文件]

将容器的当前状态保存为一个新镜像​​​​​​​

复制代码
## 启动一个容器docker run -it [镜像名称] /bin/bash
## 安装vim 然后进行修改代码apt update && apt install -y vim
## 将一个容器的当前状态保存为一个新的镜像docker commit [运行的容器ID] [新的镜像名称]

停止并删除所有容器

复制代码
docker stop $(docker ps -aq) && docker rm $(docker ps -aq)

删除所有未使用的镜像

复制代码
docker rmi $(docker images -q)

提取镜像的目录到本地​​​​​​​

复制代码
# 1. 创建临时容器(不启动)docker create --name temp_container [当前镜像的ID]
# 2. 只提取 /src 目录到主机当前目录下的 src_files 文件夹docker cp temp_container:/src ./src_files
# 3. 删除临时容器docker rm -f temp_container
相关推荐
虎头金猫3 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
分布式存储与RustFS3 天前
MinIO 官方 Docker 镜像被移除:依赖它的项目该怎么办
docker·云原生·devops·对象存储·minio·分布式存储
玉&心3 天前
通过Arthas在线诊断K8S中的内存及JVM等使用情况
docker·k8s·arthas
xing-xing3 天前
Docker容器中Nginx站点根目录网页配置访问
nginx·docker
赵文宇(温玉)3 天前
CoreDNS的hosts插件的缺行配置导致k8s集群异常
容器·kubernetes·rancher
guo_wen_qiang3 天前
上传本地镜像到harbor中
docker·容器·持续部署
羑悻的小杀马特3 天前
Dockerfile 全景指南:从入门编写dockerfile到生产环境镜像优化实战,一步步带你从啃透制作指令到镜像制作落地!
docker·dockerfile·镜像制作
BianHuanShiZhe3 天前
docker常见命令
docker
正经教主3 天前
【FDE系列】阶段2:Day 43:Docker Compose — 多容器一键编排
人工智能·docker·fde
忆~遂愿3 天前
本地片库怎么在外面打开?Plex + cpolar 搭一套可远程访问的私人影音库
docker·容器