最全的docker命令参数解释及命令用法

简介: 本文系统详解Docker核心命令,涵盖容器(run/exec/ps/start/stop等)、镜像(pull/build/push/rmi等)、网络、数据卷及全局参数,并配实操示例与可直接执行的命令,助初学者快速掌握Docker日常运维与开发应用。

简介

该文详细介绍了docker命令的一系列用法,对命中的各种参数进行解释,并通过一些实践来进行说明该命令的用法,可以复制对应的命令在docker环境下进行执行来辅助理解。

一.docker参数详解

1.1 用法:docker[OPTIONS]COMMAND

容器的自给自足的运行时
常用命令:

  • run: 从映像创建并运行新容器
  • exec: 在运行的容器中执行命令
  • ps: 列出容器
  • build: 从Dockerfile构建映像
  • pull: 从注册表下载图像
  • push: 将图像上载到注册表
  • images: 列出图像
  • login: 登录到注册表
  • logout: 从注册表注销
  • search: 搜索Docker Hub以获取图像
  • version: 显示Docker版本信息
  • info: 显示系统范围的信息

1.2 管理命令:

  • buider: 管理生成
  • buildx*: Docker buildx(Docker股份有限公司,版本0.11.2)
  • compose*: Docker compose(Docker股份有限公司v2.21.0)
  • container: 管理容器
  • context: 管理上下文
  • image: 管理图像
  • manifest: 管理Docker映像清单和清单列表
  • network: 管理网络
  • plugin: 管理插件
  • system: 管理Docker
  • trust: 对Docker映像的信任
  • volume: 管理卷

    1.3 Swarm命令:

  • swarm: 管理swarm

    1.4 命令:

  • attach: 将本地标准输入、输出和错误流附加到正在运行的容器
  • commit: 根据容器的更改创建新映像
  • cp: 在容器和本地文件系统之间复制文件/文件夹
  • create: 创建一个新容器
  • diff: 检查对容器文件系统上的文件或目录的更改
  • events: 从服务器获取实时事件
  • export: 将容器的文件系统导出为tar存档
  • history: 显示图像的历史记录
  • import: 从tarball导入内容以创建文件系统映像
  • inspect: 返回Docker对象的低级信息
  • kill: 杀死一个或多个正在运行的容器
  • load: 从tar存档或STDIN加载图像
  • logs: 获取容器的日志
  • pause: 暂停一个或多个容器中的所有进程
  • port: 列出容器的端口映射或特定映射
  • rename: 重命名容器
  • restart: 重新启动一个或多个容器
  • rm: 移除一个或多个容器
  • rmi: 删除一个或多个图像
  • save: 将一个或多个图像保存到tar存档(默认情况下流式传输到STDOUT)
  • start: 启动一个或多个停止的容器
  • stats: 显示容器资源使用情况统计信息的实时流
  • stop: 停止一个或多个正在运行的容器
  • tag: 创建引用SOURCE_IMAGE的标记TARGET_IMAGE
  • top: 显示容器的运行进程
  • unpause: 取消暂停一个或多个容器中的所有进程
  • update: 更新一个或多个容器的配置
  • wait: 阻止,直到一个或多个容器停止,然后打印它们的退出代码

    1.5全局选项:

  • --config string: 客户端配置文件的位置(默认为“/root/.docker”)
  • -c、 --context string: 用于连接到守护进程的上下文的名称(覆盖DOCKER_HOST env var和使用“DOCKER context use”设置的默认上下文)
  • -D、 --debug: 启用调试模式
  • -H、 --host list: 要连接到的主机列表守护程序套接字
  • -l、 --log-level string: 设置日志级别(“debug”、“info”、“warn”、“error”、“fatal”)(默认为“info”)
  • --tls: 使用tls;由--tlsverify暗示
  • --tlscacert string: 仅由该CA签名的信任证书(默认为“/root/.docker/CA.pem”)
  • --tlscert string: TLS证书文件的路径(默认为“/root/.docker/cert.pem”)
  • --tlskey string: TLS密钥文件的路径(默认为“/root/.docker/key.pem”)
  • --tlsverify: 使用TLS并验证远程
  • -v、 --version: 打印版本信息并退出
    有关命令的详细信息,请运行“docker COMMAND--help”。
    有关如何使用Docker的更多帮助,请访问https://docs.docker.com/go/guides/

二.容器操作相关

将docker常规的操作命令及用法进行讲解

2.1.查看容器列表

docker ps -a
执行结果:

CONTAINER ID   IMAGE          COMMAND                   CREATED        STATUS                      PORTS      NAMES
839f9bd5740a   43c8f6906b1b   "/bin/sh"                 9 days ago     Exited (0) 9 days ago                  happy_lichterman
4dac51122f21   43c8f6906b1b   "/bin/sh"                 9 days ago     Exited (0) 9 days ago                  sleepy_bhabha
720c5afa8248   43c8f6906b1b   "-it /bin/sh"             9 days ago     Created                                admiring_ritchie
d0c00dd30afc   8820935a464f   "/bin/sh"                 2 weeks ago    Exited (0) 2 weeks ago                 jovial_moser

2.2.启动容器

docker start id 其中id是列表中的第一列的CONTAINER ID

2.3.停止容器

docker stop id

2.4.强制停止容器

docker kill id

2.5.重启容器

docker restart id

2.6.查看容器内进程

docker top id

2.7.查看容器内细节

docker inspect id

2.8.创建容器

启动容器镜像id为imageId的镜像 docker run -it imageId /bin/sh

2.9.删除容器

docker delete id 其中id是列表中的第一列的CONTAINER ID

2.10.在容器中执行命令

docker exec id ls / 进入容器执行命令,其中id是列表中的第一列的CONTAINER ID

2.11.进入容器终端

docker exec -it id /bin/sh

2.12.查看容器日志

docker logs id

2.13.从容器中拷贝文件出来

docker cp id:/data/run.sh . 将容器中的/data/run.sh 拷贝到宿主机的当前目录
执行结:

Successfully copied 4.1kB to /data/temp/.

2.14.启动时端口映射

docker run -p <宿主机端口>:<容器端口> <镜像名>
例如:docker run -p 8080:80 nginxdocker run -p 8080:80 imageId 指定镜像的id

2.15.启动时目录映射

docker run -v <宿主机路径>:<容器内路径> <镜像名>
例如:docker run -v /data/mydocker:/home/docker nginx:latest

三.镜像类操作

3.1.查看镜像列表

docker images
执行结果:

REPOSITORY                                                                             TAG                         IMAGE ID       CREATED         SIZE
trafficserver-centos7-9.2.4                                                            latest                      76d191993f97   7 weeks ago     325MB
dokken/centos-stream-9                                                                 latest                      e26a4cdff267   7 weeks ago     308MB
<none>                                                                                 <none>                      4b2e08a52e68   7 weeks ago     264MB
<none>                                                                                 <none>                      f1fd2d2c8aa2   7 weeks ago     264MB
curlimages/curl                                                                        latest                      79009b90fb07   2 months ago    17.3MB
nginx                                                                                  latest                      92b11f67642b   4 months ago    187MB
alpine                                                                                 latest                      05455a08881e   4 months ago    7.38MB
<none>                                                                                 <none>                      de8caae3faba   5 months ago    77.5MB
memcached                                                                              latest                      4c07fb6d4e0a   5 months ago    106MB

3.2.登录镜像仓库

以阿里云镜像仓库为例:sudo docker login --username=ops-admin@xxx pcxxx-registry.cn-shenzhen.cr.aliyuncs.com,然后再输入ops-admin帐号的密码。

3.3.拉取镜像

docker pull nginx:latest

3.4.删除镜像

docker rmi IMAGEID IMAGEID 为镜像的ID可以从docker images中的第一列获取

3.5.重命名镜像名称

docker tag 《源镜像ID》 《新的镜像名称:tag》
例如:docker tag 9901b5599ad2 node:latest

3.6.构件镜像

docker build -t pcxxx-registry.cn-shenzhen.cr.aliyuncs.com/public/nginx:latest . 注意后边有一个点,表示当前目录

3.7.推送镜像

docker push pcxxx-registry.cn-shenzhen.cr.aliyuncs.com/public/nginx:latest 将构建好的镜像推送到镜像仓库

3.8.文件打包成镜像

docker import /path/to/yourimage.tar my-image:tag 将/path/to/yourimage.tar的导入成my-image:tag的镜像

3.9.将容器打包为镜像

docker commit b111630b6567 pcxxx-registry.cn-shenzhen.cr.aliyuncs.com/public/nginx:latest 将容器ID:b111630b6567 打包成镜像

3.10.导出容器为tar文件

docker save -o myimage.tar <image-id> 将镜像导出为tar包

四.docker容器网络模式

4.1.列出网络

docker network ls

4.2.创建网络

docker network create --subnet "172.100.0.0/16" milvus 创建一个网络名称为milvus 并划分网段是172.100.0.0/16

4.3.删除网络

docker network rm milvus 删除网络milvus

4.4.列出网络

docker network ls

五.数据卷操作

5.1.创建数据卷

docker volume create mytest

5.1.查看数据卷列表

docker volume ls

5.1.查看数据卷信息

docker volume inspect mytest
执行结果:

[
    {
    
        "CreatedAt": "2024-06-17T14:29:18+08:00",
        "Driver": "local",
        "Labels": null,
        "Mountpoint": "/data/docker/volumes/mytest/_data",
        "Name": "mytest",
        "Options": null,
        "Scope": "local"
    }
]

5.1.删除数据卷

docker volume rm mytest

数据卷的用法

将创建的volume 故障到容器内
docker run -v mytest:/path/in/container imageId

目录
相关文章
|
12天前
|
人工智能 自然语言处理 Shell
🦞 如何在 OpenClaw (Clawdbot/Moltbot) 配置阿里云百炼 API
本教程指导用户在开源AI助手Clawdbot中集成阿里云百炼API,涵盖安装Clawdbot、获取百炼API Key、配置环境变量与模型参数、验证调用等完整流程,支持Qwen3-max thinking (Qwen3-Max-2026-01-23)/Qwen - Plus等主流模型,助力本地化智能自动化。
🦞 如何在 OpenClaw (Clawdbot/Moltbot) 配置阿里云百炼 API
|
7天前
|
人工智能 安全 机器人
OpenClaw(原 Clawdbot)钉钉对接保姆级教程 手把手教你打造自己的 AI 助手
OpenClaw(原Clawdbot)是一款开源本地AI助手,支持钉钉、飞书等多平台接入。本教程手把手指导Linux下部署与钉钉机器人对接,涵盖环境配置、模型选择(如Qwen)、权限设置及调试,助你快速打造私有、安全、高权限的专属AI助理。(239字)
4351 12
OpenClaw(原 Clawdbot)钉钉对接保姆级教程 手把手教你打造自己的 AI 助手
|
8天前
|
人工智能 机器人 Linux
保姆级 OpenClaw (原 Clawdbot)飞书对接教程 手把手教你搭建 AI 助手
OpenClaw(原Clawdbot)是一款开源本地AI智能体,支持飞书等多平台对接。本教程手把手教你Linux下部署,实现数据私有、系统控制、网页浏览与代码编写,全程保姆级操作,240字内搞定专属AI助手搭建!
4701 17
保姆级 OpenClaw (原 Clawdbot)飞书对接教程 手把手教你搭建 AI 助手
|
6天前
|
人工智能 机器人 Linux
OpenClaw(Clawdbot、Moltbot)汉化版部署教程指南(零门槛)
OpenClaw作为2026年GitHub上增长最快的开源项目之一,一周内Stars从7800飙升至12万+,其核心优势在于打破传统聊天机器人的局限,能真正执行读写文件、运行脚本、浏览器自动化等实操任务。但原版全英文界面对中文用户存在上手门槛,汉化版通过覆盖命令行(CLI)与网页控制台(Dashboard)核心模块,解决了语言障碍,同时保持与官方版本的实时同步,确保新功能最快1小时内可用。本文将详细拆解汉化版OpenClaw的搭建流程,涵盖本地安装、Docker部署、服务器远程访问等场景,同时提供环境适配、问题排查与国内应用集成方案,助力中文用户高效搭建专属AI助手。
3045 8
|
10天前
|
人工智能 JavaScript 应用服务中间件
零门槛部署本地AI助手:Windows系统Moltbot(Clawdbot)保姆级教程
Moltbot(原Clawdbot)是一款功能全面的智能体AI助手,不仅能通过聊天互动响应需求,还具备“动手”和“跑腿”能力——“手”可读写本地文件、执行代码、操控命令行,“脚”能联网搜索、访问网页并分析内容,“大脑”则可接入Qwen、OpenAI等云端API,或利用本地GPU运行模型。本教程专为Windows系统用户打造,从环境搭建到问题排查,详细拆解全流程,即使无技术基础也能顺利部署本地AI助理。
7212 16
|
8天前
|
存储 人工智能 机器人
OpenClaw是什么?阿里云OpenClaw(原Clawdbot/Moltbot)一键部署官方教程参考
OpenClaw是什么?OpenClaw(原Clawdbot/Moltbot)是一款实用的个人AI助理,能够24小时响应指令并执行任务,如处理文件、查询信息、自动化协同等。阿里云推出的OpenClaw一键部署方案,简化了复杂配置流程,用户无需专业技术储备,即可快速在轻量应用服务器上启用该服务,打造专属AI助理。本文将详细拆解部署全流程、进阶功能配置及常见问题解决方案,确保不改变原意且无营销表述。
4950 5
|
10天前
|
人工智能 JavaScript API
零门槛部署本地 AI 助手:Clawdbot/Meltbot 部署深度保姆级教程
Clawdbot(Moltbot)是一款智能体AI助手,具备“手”(读写文件、执行代码)、“脚”(联网搜索、分析网页)和“脑”(接入Qwen/OpenAI等API或本地GPU模型)。本指南详解Windows下从Node.js环境搭建、一键安装到Token配置的全流程,助你快速部署本地AI助理。(239字)
4832 23
|
16天前
|
人工智能 API 开发者
Claude Code 国内保姆级使用指南:实测 GLM-4.7 与 Claude Opus 4.5 全方案解
Claude Code是Anthropic推出的编程AI代理工具。2026年国内开发者可通过配置`ANTHROPIC_BASE_URL`实现本地化接入:①极速平替——用Qwen Code v0.5.0或GLM-4.7,毫秒响应,适合日常编码;②满血原版——经灵芽API中转调用Claude Opus 4.5,胜任复杂架构与深度推理。
9000 13