当前位置: 首页 > article >正文

Docker 60个常用命令汇总

文章目录

  • 前言
  • 一、Docker命令的分类概述
  • 二、Docker命令的汇总列表
      • 1. Docker 基础命令
      • 2. Docker 镜像命令
      • 3. Docker 容器命令
      • 4. Docker 网络命令
      • 5. Docker 数据卷命令
      • 6. Docker 构建命令
      • 7. Docker 容器操作命令
      • 8. Docker 镜像仓库命令
      • 9. Docker 系统命令
      • 10. Docker 容器文件操作
      • 11. Docker 容器端口映射
      • 12. Docker 容器状态
      • 13. Docker 容器日志管理
      • 14. Docker 容器资源限制
      • 15. Docker 容器健康检查
  • 三、总结


前言

Docker是一个开源的应用容器引擎,它允许开发者将他们的应用程序及其依赖打包进一个可移植的容器中,然后这个容器可以在任何支持Docker的Linux或Windows系统上运行。Docker容器是轻量级、独立的,并且能够快速启动。以下是Docker常用命令的详解,包括分类、举例和命令选项。

一、Docker命令的分类概述

Docker的命令分为多个类别,每一类都对应了不同的功能,以下是主要的命令类别及其用途:

基础命令:用于镜像、容器和系统的信息获取和操作。
管理命令:包括镜像、容器、网络、存储卷等对象的管理。
Swarm命令:专门用于管理Docker的分布式集群Swarm。
全局选项:定义一些Docker的配置和环境参数。
其他命令:用于特定任务,如复制文件、查看日志等。
示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

二、Docker命令的汇总列表

由于提供的信息量很大,这是一个包含60个Docker常用命令的汇总列表,并为每个命令提供简要说明和示例。请注意,由于篇幅限制,某些命令的解释会相对简略。

1. Docker 基础命令

  1. docker version:查看Docker版本。

    docker version
    
  2. docker info:显示Docker系统信息。

    docker info
    
  3. docker --help:查看Docker帮助文档。

    docker --help
    

2. Docker 镜像命令

  1. docker images:列出所有本地镜像。

    docker images
    
  2. docker pull:从仓库拉取镜像。

    docker pull nginx
    
  3. docker push:将本地镜像推送到仓库。

    docker push my-image:latest
    
  4. docker rmi:删除一个或多个镜像。

    docker rmi my-image:latest
    
  5. docker rmi -f:强制删除一个或多个镜像。

    docker rmi -f my-image:latest
    
  6. docker save:将镜像保存为tar文件。

    docker save -o my-image.tar my-image:latest
    
  7. docker load:从tar文件加载镜像。

    docker load -i my-image.tar
    

3. Docker 容器命令

  1. docker run:运行一个新的容器。

    docker run -d --name my-container nginx
    
  2. docker stop:停止一个运行中的容器。

    docker stop my-container
    
  3. docker start:启动一个已停止的容器。

    docker start my-container
    
  4. docker restart:重启容器。

    docker restart my-container
    
  5. docker kill:强制停止容器。

    docker kill my-container
    
  6. docker rm:删除一个容器。

    docker rm my-container
    
  7. docker rm -f:强制删除一个容器。

    docker rm -f my-container
    
  8. docker ps:列出当前运行的容器。

    docker ps
    
  9. docker ps -a:列出所有容器。

    docker ps -a
    
  10. docker logs:查看容器日志。

    docker logs my-container
    

4. Docker 网络命令

  1. docker network ls:列出所有网络。

    docker network ls
    
  2. docker network create:创建一个新的网络。

    docker network create my-network
    
  3. docker network connect:将容器连接到网络。

    docker network connect my-network my-container
    
  4. docker network disconnect:将容器从网络断开。

    docker network disconnect my-network my-container
    

5. Docker 数据卷命令

  1. docker volume ls:列出所有数据卷。

    docker volume ls
    
  2. docker volume create:创建一个新的数据卷。

    docker volume create my-volume
    
  3. docker volume inspect:查看数据卷信息。

    docker volume inspect my-volume
    
  4. docker volume rm:删除一个数据卷。

    docker volume rm my-volume
    

6. Docker 构建命令

  1. docker build:根据Dockerfile构建镜像。

    docker build -t my-image:latest .
    
  2. docker build -f:使用指定的Dockerfile构建镜像。

    docker build -f Dockerfile.debug -t my-image:debug .
    

7. Docker 容器操作命令

  1. docker exec:在运行中的容器内执行命令。

    docker exec -it my-container bash
    
  2. docker attach:附加到一个运行中的容器。

    docker attach my-container
    
  3. docker update:更新容器配置。

    docker update --restart=always my-container
    
  4. docker rename:重命名容器。

    docker rename my-old-name my-new-name
    
  5. docker pause:暂停容器。

    docker pause my-container
    
  6. docker unpause:恢复容器。

    docker unpause my-container
    

8. Docker 镜像仓库命令

  1. docker login:登录到Docker仓库。

    docker login
    
  2. docker logout:登出Docker仓库。

    docker logout
    
  3. docker search:搜索Docker Hub中的镜像。

    docker search nginx
    
  4. docker tag:给镜像打标签。

    docker tag my-image:latest my-repo/my-image:latest
    

9. Docker 系统命令

  1. docker system df:查看Docker对象的空间使用情况。

    docker system df
    
  2. docker system prune:清理未使用的对象。

    docker system prune
    
  3. docker system prune -a:清理所有未使用的对象。

    docker system prune -a
    
  4. docker stats:实时显示容器资源使用情况。

    docker stats
    
  5. docker stats --no-stream:显示容器资源使用情况,不实时更新。

    docker stats --no-stream
    

10. Docker 容器文件操作

  1. docker cp:在容器和宿主机之间复制文件。

    docker cp my-container:/path/to/file /host/path
    
  2. docker cp -f:强制覆盖宿主机文件。

    docker cp -f my-container:/path/to/file /host/path
    

11. Docker 容器端口映射

  1. docker port:查看容器端口映射。

    docker port my-container
    
  2. docker port -f:过滤查看特定容器的端口映射。

    docker port -f my-container
    

12. Docker 容器状态

  1. docker inspect:获取容器/镜像的元数据。

    docker inspect my-container
    
  2. docker inspect --format:获取特定格式的元数据。

    docker inspect --format='{{.State.Running}}' my-container
    

13. Docker 容器日志管理

  1. docker logs:查看容器日志。

    docker logs my-container
    
  2. docker logs -f:实时跟踪容器日志。

    docker logs -f my-container
    
  3. docker logs --since:查看指定时间后的日志。

    docker logs --since 1h my-container
    
  4. docker logs --tail:查看日志的最后几行。

    docker logs --tail 10 my-container
    

14. Docker 容器资源限制

  1. docker run -m:限制容器内存使用。

    docker run -m 512m --name my-container nginx
    
  2. docker run -c:限制容器CPU使用。

    docker run --cpus 0.5 --name my-container nginx
    

15. Docker 容器健康检查

  1. docker run --health-cmd:设置容器健康检查命令。

    docker run --health-cmd="curl -f http://localhost/ || exit 1" --name my-container nginx
    
  2. docker run --health-interval:设置健康检查间隔。

    docker run --health-interval 1m --name my-container nginx
    
  3. docker run --health-retries:设置健康检查重试次数。

    docker run --health-retries 3 --name my-container nginx
    

三、总结

以上内容详细阐述了Docker的核心命令、常用的命令操作、实际的市场应用和使用Docker时的注意事项。Docker命令行工具功能丰富,结合具体业务场景使用,可以有效提升开发和部署的效率。


http://www.kler.cn/a/374049.html

相关文章:

  • postgresql14源码编译安装
  • SqlServer中窗口函数(ROW_NUMBER()、LAG())、WITH 子句、COALESCE
  • 神经网络进行波士顿房价预测
  • Chromium127编译指南 Linux篇 - 额外环境配置(五)
  • ElasticSearch备考 -- Index rollover
  • android 12 禁止三方APP 使用API 直接打开wifi的修改方法
  • springboot 修复 Spring Framework 特定条件下目录遍历漏洞(CVE-2024-38819)
  • 丢失有一段时间时的数据可以找回吗?可以!
  • Rust 知识的 20 道练习题和详细解答
  • 【JVM】——GC垃圾回收机制(图解通俗易懂)
  • nginx 路径匹配,关于“/“对规则的影响
  • 多厂商的实现不同vlan间通信
  • LLM速览篇【241-270】
  • 高效网络自动化:Python在网络基础中的应用
  • [论文精读]LoRA: Low-Rank Adaptation of Large Language Models
  • 【初阶数据结构与算法】新的旅程之时间复杂度和空间复杂度
  • 学Linux的第五天
  • 如何在被 DDoS 攻击时更换 IP 地址
  • Vue项目中动态路由与权限控制:router.beforeEach的使用及无token重定向登录页
  • Linux上python离线安装教程
  • 常见问题 | 数字签名如何保障电子商务交易安全?
  • 【代码随想录Day60】图论Part11
  • Linux 文件系统权限
  • Spring Boot 中的过滤器 (Filter) 使用方案
  • 关于自动驾驶等级相关知识
  • ubuntu20.04 加固方案-设置SSH是否使用业界认可的加密算法