Docker 常用命令详解与参数说明 - 教程

news/2025/9/18 21:07:49/文章来源:https://www.cnblogs.com/yfceshi/p/19099726

Docker 是一个开源的应用容器引擎,它允许开发者将应用程序及其依赖打包到一个可移植的容器中。以下是对常用 Docker 命令的详细解释,包括每个命令中的参数含义、语法格式以及使用示例。


1. 镜像相关命令

查看本地已有的镜像

docker images [OPTIONS]

  • 功能:列出本地所有已下载或构建的镜像。

  • 参数说明

    • [OPTIONS]:可选参数,例如:

      • -a, --all:显示所有镜像(包括中间层镜像)。

      • --digests:显示摘要信息。

      • --no-trunc:不截断输出。

  • 示例

docker images
docker images -a

从远程仓库拉取镜像

docker pull [OPTIONS] NAME[:TAG|@DIGEST]

  • 功能:从远程仓库(如 Docker Hub)下载指定镜像。

  • 参数说明

    • NAME:镜像名称,例如 nginx, mysql, redis

    • TAG:镜像标签(版本),例如 latest, 8.0.36, 6.2-alpine

    • DIGEST:镜像的唯一哈希值(用于精确匹配特定镜像)。

    • [OPTIONS]:可选参数,例如:

      • -a, --all-tags:拉取所有标签的镜像。

  • 示例

    docker pull nginx:latest
    docker pull mysql@sha256:abc123...
    docker pull minio/minio:RELEASE.2022-01-04T07-41-07Z


    构建镜像(基于 Dockerfile)

    docker build [OPTIONS] PATH | URL | -

    • 功能:根据当前目录下的 Dockerfile 构建一个新的镜像。

    • 参数说明

      • PATH:包含 Dockerfile 的本地路径(通常为当前目录 

      • URL:远程 Git 仓库地址。

      • -:表示从标准输入读取内容。

      • [OPTIONS]:可选参数,例如:

        • -t, --tag stringArray:指定镜像名称和标签,例如 my-app:latest

        • --build-arg key=value:传递构建时变量。

        • --no-cache:不使用缓存。

    • 示例

      docker build -t my-app .
      docker build -t my-app:v1 https://github.com/yourname/repo.git#main

      删除本地镜像

      docker rmi [OPTIONS] IMAGE [IMAGE...]

      • 功能:删除一个或多个本地镜像。

      • 参数说明

        • IMAGE:镜像名称或 ID,例如 nginx, redis:6.2-alpine, f5f171121fa3

        • [OPTIONS]:可选参数,例如:

          • -f, --force:强制删除镜像,即使有容器正在使用该镜像。

      • 示例

        docker rmi nginx
        docker rmi redis:6.2-alpine mysql:8.0.36


        导出镜像为 tar 文件

        docker save [OPTIONS] IMAGE > FILE

        • 功能:将一个或多个镜像打包成 .tar 文件,便于备份或迁移。

        • 参数说明

          • IMAGE:要导出的镜像名称或 ID。

          • [OPTIONS]:可选参数,例如:

            • -o, --output string:指定输出文件名。

        • 示例

          docker save -o nginx.tar nginx
          docker save -o app-images.tar my-app:latest test-dev-doc-server:latest

          导入镜像

          docker load [OPTIONS] < FILE

          • 功能:从 .tar 文件中加载镜像。

          • 参数说明

            • FILE:镜像文件路径。

            • [OPTIONS]:可选参数,例如:

              • -i, --input string:指定输入文件。

          • 示例

            docker load -i nginx.tar


            推送镜像到远程仓库

            docker push [OPTIONS] NAME[:TAG]

            • 功能:将本地镜像推送到远程仓库(如 Docker Hub 或私有 Registry)。

            • 参数说明

              • NAME:镜像名称,必须是已登录账户下的命名空间,例如 username/myapp

              • TAG:镜像标签。

              • [OPTIONS]:可选参数,例如:

                • --disable-content-trust:禁用内容信任(默认启用)。

            • 前提条件

              • 必须先使用 docker login 登录远程仓库。

            • 示例

              docker push my-app:latest


              2. 容器相关命令

              运行一个新的容器

              docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

              • 功能:启动一个新的容器实例。

              • 参数说明

                • IMAGE:使用的镜像名称。

                • [COMMAND] [ARG...]:覆盖镜像中的默认启动命令。

                • [OPTIONS]:常见选项包括:

                  • -d:后台运行容器。

                  • -p HOST_PORT:CONTAINER_PORT:端口映射。

                  • --name string:指定容器名称。

                  • -v HOST_PATH:CONTAINER_PATH:挂载数据卷。

                  • -e KEY=VALUE:设置环境变量。

              • 示例

                docker run -d -p 80:80 --name my-nginx nginx docker run -d -p 3306:3306 -v /host/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql


                列出正在运行的容器

                docker ps [OPTIONS]

                • 功能:列出当前正在运行的容器。

                • 参数说明

                  • [OPTIONS]:可选参数,例如:

                    • -a:显示所有容器(包括停止的)。

                    • -q:仅显示容器 ID。

                • 示例

                  docker ps docker ps -a


                  查看当前运行的 MinIO 容器版本

                  docker exec -it minio minio --version

                  **说明**:

                  • minio 是容器名称(与 NAMES 列一致)。

                  • 该命令会进入容器并执行 minio --version 来输出版本号。


                    示例输出(仅供参考)

                    minio version RELEASE.2022-01-04T07-41-07Z

                    这个输出表示你正在使用的是 MinIO 的 RELEASE.2021-06-17 版本。

                    停止容器

                    docker stop CONTAINER_ID

                    • 功能:优雅地停止一个正在运行的容器。

                    • 参数说明

                      • CONTAINER_ID:容器 ID 或名称。

                    • 示例

                      docker stop my-nginx


                      启动已停止的容器

                      docker start CONTAINER_ID

                      • 功能:重新启动一个已停止的容器。

                      • 参数说明

                        • CONTAINER_ID:容器 ID 或名称。

                      • 示例

                        docker start my-nginx


                        重启容器

                        docker restart CONTAINER_ID

                        • 功能:重启一个正在运行的容器。

                        • 参数说明

                          • CONTAINER_ID:容器 ID 或名称。

                        • 示例

                          docker restart my-nginx


                          进入正在运行的容器

                          docker exec -it CONTAINER_ID /bin/bash

                          • 功能:进入容器内部执行命令。

                          • 参数说明

                            • -it:交互式终端模式。

                            • /bin/bash:容器内使用的 shell(如果容器没有 bash,可以尝试 /bin/sh)。

                          • 示例

                            docker exec -it my-nginx /bin/bash


                            删除容器

                            docker rm [OPTIONS] CONTAINER [CONTAINER...]

                            • 功能:删除一个或多个容器。

                            • 参数说明

                              • CONTAINER:容器 ID 或名称。

                              • [OPTIONS]:可选参数,例如:

                                • -f, --force:强制删除正在运行的容器。

                            • 示例

                              docker rm my-nginx


                              查看容器日志

                              docker logs [OPTIONS] CONTAINER_ID

                              • 功能:查看容器的标准输出日志。

                              • 参数说明

                                • [OPTIONS]:可选参数,例如:

                                  • -f:持续跟踪日志。

                                  • --tail N:只显示最后 N 行。

                              • 示例

                                docker logs my-nginx docker logs -f my-nginx


                                查看容器详细信息

                                docker inspect CONTAINER_ID

                                • 功能:查看容器的详细配置信息(IP、网络、存储等)。

                                • 参数说明

                                  • CONTAINER_ID:容器 ID 或名称。

                                • 示例

                                  docker inspect my-nginx


                                  复制文件到容器或从容器复制文件

                                  docker cp [OPTIONS] SRC_PATH CONTAINER:DEST_PATH docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH

                                  • 功能:在宿主机和容器之间复制文件。

                                  • 参数说明

                                    • SRC_PATH:源路径。

                                    • DEST_PATH:目标路径。

                                  • 示例

                                    docker cp ./test.txt my-nginx:/tmp/test.txt docker cp my-nginx:/tmp/test.txt ./


                                    3. 网络相关命令

                                    创建自定义网络

                                    docker network create [OPTIONS] NETWORK

                                    • 功能:创建一个自定义网络(桥接、覆盖等)。

                                    • 参数说明

                                      • NETWORK:网络名称。

                                      • [OPTIONS]:可选参数,例如:

                                        • --driver bridge:指定网络驱动(默认为 bridge)。

                                        • --subnet CIDR:指定子网范围。

                                    • 示例

                                      docker network create my-network


                                      连接容器到网络

                                      docker network connect NETWORK CONTAINER

                                      • 功能:将容器加入到指定网络。

                                      • 参数说明

                                        • NETWORK:网络名称。

                                        • CONTAINER:容器 ID 或名称。

                                      • 示例

                                        docker network connect my-network my-nginx


                                        断开容器与网络的连接

                                        docker network disconnect NETWORK CONTAINER

                                        • 功能:将容器从指定网络中断开。

                                        • 参数说明

                                          • NETWORK:网络名称。

                                          • CONTAINER:容器 ID 或名称。

                                        • 示例

                                          docker network disconnect my-network my-nginx


                                          删除网络

                                          docker network rm NETWORK

                                          • 功能:删除一个未被使用的网络。

                                          • 参数说明

                                            • NETWORK:网络名称。

                                          • 示例

                                            docker network rm my-network


                                            4. 数据卷相关命令

                                            创建数据卷

                                            docker volume create VOLUME_NAME

                                            • 功能:创建一个持久化数据卷。

                                            • 参数说明

                                              • VOLUME_NAME:数据卷名称。

                                            • 示例

                                              docker volume create my-volume


                                              挂载数据卷到容器

                                              docker run -v VOLUME_NAME:PATH_IN_CONTAINER ...

                                              • 功能:将数据卷挂载到容器的某个路径。

                                              • 参数说明

                                                • VOLUME_NAME:数据卷名称。

                                                • PATH_IN_CONTAINER:容器内的目标路径。

                                              • 示例

                                                docker run -d -v my-volume:/data --name my-container alpine


                                                清理未使用的数据卷

                                                docker volume prune

                                                • 功能:删除所有未被使用的数据卷。

                                                • 示例

                                                  docker volume prune


                                                  5. 其他常用命令

                                                  查看 Docker 版本信息

                                                  docker version

                                                  • 功能:显示 Docker 客户端和服务器的版本信息。


                                                    查看 Docker 系统信息

                                                    docker info

                                                    • 功能:显示系统级信息,如容器数量、镜像数量、存储驱动等。


                                                      清理未使用的镜像、容器、网络和数据卷

                                                      docker system prune

                                                      • 功能:清理所有未使用的资源。

                                                      • 可选参数

                                                        • -a:同时删除所有未使用的镜像(不只是悬空镜像)。

                                                      • 示例

                                                        docker system prune docker system prune -a


                                                        批量操作容器

                                                        获取所有容器 ID

                                                        docker ps -aq

                                                        批量停止容器

                                                        docker stop $(docker ps -aq)

                                                        批量删除容器

                                                        docker rm $(docker ps -aq)

                                                        批量删除镜像

                                                        docker rmi $(docker images -q)


                                                        本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/907429.shtml

                                                        如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

                                                        相关文章

                                                        7zip压缩解压缩-测试CPU性能

                                                        前言全局说明在B站刷大佬视频的时候,看到UP在Debign linux 上用7z测试CPU性能,惊讶,7z还有这功能。 赶快打开手边的电脑,看看 Windows 上的 7z 有没有这功能,一用,果然有这个功能。 以前想知道CPU性能就只能装些…

                                                        交叉编译openharmony版本的gdb

                                                        1465 cd ../gmp-6.3.0/ 1466 ./configure --prefix=/system/ CC=aarch64-linux-gnu-gcc --build=`./config.guess` --target=aarch64-linux-gnu --host=aarch64-linux-gnu 1467 make 1468 …

                                                        高数

                                                        1 求 \(\lim_{n\to\infty}\left(1-\frac 1n\right)^{n^2}\) 解: 首先证明 \(\lim_{n\to\infty}\left(1-\frac 1n\right)^{n}=e^{-1}\)。 \[\begin{align*} \lim_{n\to\infty}\left(1-\frac 1n\right)^{n} &=\lim_…

                                                        06-排序操作

                                                        06-排序操作$(".postTitle2").removeClass("postTitle2").addClass("singleposttitle");介绍 排序操作很常用,比如查询学员成绩,按照成绩降序排列。排序的SQL语法: select .. from .…

                                                        P5666 [CSP-S2019] 树的重心

                                                        分为 \(x \ne rt\) 和 \(x = rt\) 两种情况计算. 对于第一种情况,不难发现我们合法的裁减下来的连通块大小是在一个区间范围之内的,于是 DFS 时用一棵树状数组修改即可(因为这个大小可能是子树大小可能是子树外大小,这…

                                                        Java运行机制

                                                        Java 程序运行机制 编译型(compile) 解释型 程序运行机制 ![机制图](C:\Users\asus\Desktop\图集\屏幕截图 2025-09-18 204707.png)

                                                        除自身以外数组的乘积-leetcode

                                                        题目描述 给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 …

                                                        【2022】SDRZ夏令营游记

                                                        为什么2022的游记会在2025年发? 因为感觉洛谷博客快扛不住了,决定开始搬运。今天是夏令营最后一天了,在机房里坐不住了,写篇游记来纪念一下。 day0: 这天是gryz65级三个校区的信竞同学第一次大会师。我成功与一区…

                                                        rapidXML解析xml文件

                                                        1.rapidXML介绍 RapidXML 是一个轻量级、高性能的 XML 解析库,以单头文件形式提供(rapidxml.hpp 及辅助头文件),适合在 C++ 中解析中小型 XML 文档。获取 RapidXML:从 官方网站 下载头文件(rapidxml.hpp、rapidx…

                                                        2025.9.17 - 呓语

                                                        今天在Ubuntu虚拟机上安装配置了Hadoop,Hbase和ZooKeeper下面开始idea连接虚拟机Hbase. 1、在Hbase里创建StudentAndCourse表: (1)启动Hadoop(2)启动Hbase(3)进入shell界面(4)创建表(5)插入数据(6)查看表数据2、id…

                                                        office2024免费永久激活版下载安装教程:含激活步骤 + 一键安装包下载

                                                        目录一、 Office 2024 专业增强版介绍二、Office 2024 专业增强版核心功能(每个组件都好用)1.Word 2024:写文档再也不用熬夜改格式2.Excel 2024:处理数据超省心三、Office 2024 专业增强版下载渠道(正规才安全,避…

                                                        大学不止GPA

                                                        🎊精彩预告~~~在这个各类奖项进行评比的时间点,我没得到很好的结果,没有多少经济实力的我,却花了2个月生活费的价钱,买下了大疆Action 5 Pro。📸 上了大学之后,感觉自己反而很少得到来自外界的肯定。我想,有…

                                                        大学目标

                                                        一、自我介绍:从好奇到尝试 哈喽~我是王星星,一名大数据技术专业的学生。和很多 “一开始就目标明确” 的同学不同,我更像个在代码世界里 “逛园子” 的人 —— 对技术充满好奇,但还在摸索最感兴趣的方向。不过,…

                                                        福昕PDF编辑器专业版破解 v2025 中文版安装使用教程

                                                        福昕PDF编辑器专业版破解 v2025 中文版安装使用教程福昕高级pdf编辑器介绍 可以对PDF文件进行多种 创建、转换、打印、编辑、注释、表单处理、签名、保护、协同合作 等工作,强大的编辑套件让本身不可以编辑的PDF格式文…

                                                        MySQL LIMIT 和 ORDER BY 优化详解

                                                        MySQL LIMIT 和 ORDER BY 优化详解MySQL LIMIT 子句 MySQL LIMIT 子句是控制 SELECT 语句返回行数的重要工具。通过指定从结果集中获取的最大行数,它可以让你处理数据子集,尤其是在涉及大表的情况下。该功能可提高查…

                                                        python 架构专业的技术50

                                                        pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

                                                        [论文笔记/评估方法] RELIABLE AND DIVERSE EVALUATION OF LLM MEDICAL KNOWLEDGE MASTERY

                                                        RELIABLE AND DIVERSE EVALUATION OF LLM MEDICAL KNOWLEDGE MASTERY该文章于2025年发表在ICLR(CCF A),早在2024年9月发布在arxiv。 文章地址:Reliable and Diverse Evaluation of LLM Medical Knowledge Mastery …

                                                        本地VMware Workstation Pro的rhel-server-7.9-x86_64服务器配置本地源

                                                        1. 安装好VMware Workstation Pro以及rhel-server-7.9-x86_64-dvd.iso后 2. 先对VMware Workstation 进行虚拟机关机 3. 对虚拟机的CD/DVD(SATA) 勾选设备状态为启动时连接,以及连接中勾选使用ISO镜像文件,为本地的r…

                                                        SCPI 标准命令

                                                        SCPI 标准命令*IDN? 是 SCPI 标准命令之一,用来返回仪器的身份信息。 📌 背景SCPI(Standard Commands for Programmable Instruments,标准可编程仪器命令)是 1990 年制定的一套通用指令集,几乎所有可编程仪器(…

                                                        前端,真的让我深刻感受到信息闭塞的恐怖 - 指南

                                                        前端,真的让我深刻感受到信息闭塞的恐怖 - 指南2025-09-18 20:34 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display…