【 0 基础 Docker 极速入门】镜像、容器、常用命令总结

2024-06-01 06:52

本文主要是介绍【 0 基础 Docker 极速入门】镜像、容器、常用命令总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Docker Images(镜像)生命周期

请添加图片描述
Docker 是一个用于创建、部署和运行应用容器的平台。为了更好地理解 Docker 的生命周期,以下是相关概念的介绍,并说明它们如何相互关联:

  1. Docker

    • Docker 是一个开源平台,用于自动化应用程序在轻量级、便携式容器中的部署、扩展和管理。
  2. Dockerfile

    • Dockerfile 是一个文本文件,包含一系列指令,用于构建 Docker 镜像。每个指令在 Docker 镜像中创建一个新的层。
  3. build

    • docker build 命令用于从 Dockerfile 构建一个 Docker 镜像。该命令读取 Dockerfile 的内容,并按照其中的指令一步步创建镜像。
  4. Images

    • Docker 镜像是一个不可变的文件,它包含了应用程序以及其运行所需的一切。镜像是基于层的,每层代表一个文件系统的快照。
  5. tag

    • 标签用于给 Docker 镜像赋予一个易于识别的名字和版本号。比如,myapp:1.0 中的 1.0 就是一个标签。
  6. registry

    • Docker 仓库是存储和分发 Docker 镜像的地方。最常用的公共仓库是 Docker Hub,也可以有私有仓库。
  7. push

    • docker push 命令用于将本地 Docker 镜像上传到 Docker 仓库中,以便在其他环境中使用或共享。
  8. pull

    • docker pull 命令用于从 Docker 仓库中下载镜像到本地环境。
  9. Containers

    • 容器是从镜像创建的一个实例,运行应用程序。容器是轻量级的隔离环境,确保应用程序的独立运行。
  10. run

    • docker run 命令用于创建并启动一个新的容器。例如,docker run myapp:1.0 会从 myapp:1.0 镜像创建并启动一个容器。
  11. commit

    • docker commit 命令用于将一个正在运行的容器保存为一个新的镜像。这对于保存容器的当前状态很有用。
  12. stop

    • docker stop 命令用于停止一个正在运行的容器。停止的容器可以通过 start 命令重新启动。
  13. start

    • docker start 命令用于启动一个已经停止的容器,而不是创建一个新的实例。
  14. restart

    • docker restart 命令用于重新启动一个正在运行或已经停止的容器。
  15. save

    • docker save 命令用于将一个或多个镜像保存为一个 tar 文件,以便在不同的系统之间传输。比如,docker save -o backup.tar myapp:1.0
  16. load

    • docker load 命令用于从一个 tar 文件中加载镜像。例如,docker load -i backup.tar
  17. Local Docker instance

    • 本地 Docker 实例是指在本地计算机上运行的 Docker 引擎,用于构建、运行和管理容器。
  18. My computer

    • 我的计算机是指用户个人的计算设备,上面可以安装 Docker 引擎,允许用户在本地构建和运行 Docker 容器。
  19. backup.tar

    • 这是一个由 docker save 命令生成的 tar 文件,包含一个或多个 Docker 镜像的备份。它可以用 docker load 命令恢复到本地 Docker 实例。

通过这些概念,Docker 提供了一个完整的生命周期管理工具集,从创建和测试镜像,到分发和运行容器,再到管理和备份镜像。每个步骤都在 Docker 环境中起着关键作用,确保应用程序可以高效、可靠地运行在不同的计算环境中。

Docker Container(容器)生命周期

在这里插入图片描述
Docker 容器管理涉及一系列命令和状态,用于控制容器的生命周期。以下是对这些概念的简要介绍:

  1. docker run

    • 创建并启动一个新的容器。例如,docker run myapp:latest 会从 myapp:latest 镜像创建并启动一个容器。
  2. docker restart

    • 重新启动一个正在运行或已停止的容器。相当于先执行 docker stop,然后再执行 docker start
  3. docker create

    • 仅创建一个新的容器,但不启动它。可以后续用 docker start 来启动这个容器。
  4. docker start

    • 启动一个已经被创建但未运行的容器,或者重新启动一个已停止的容器。
  5. created

    • 容器状态,表示容器已经被创建,但还没有被启动。
  6. running

    • 容器状态,表示容器正在运行中。
  7. docker 容器的主进程退出

    • 当容器内的主进程(PID 1)退出时,容器也会停止运行,状态变为 exited
  8. docker 服务挂掉

    • 如果 Docker 守护进程(Docker Daemon)崩溃或停止,所有运行中的容器都会停止。
  9. docker pause

    • 暂停一个运行中的容器中的所有进程。
  10. docker unpause

    • 恢复一个被暂停的容器中的所有进程。
  11. docker rm

    • 删除一个已停止的容器。例如,docker rm mycontainer 删除名为 mycontainer 的容器。
  12. docker rm -f

    • 强制删除一个正在运行的容器。这相当于先执行 docker stop 再执行 docker rm
  13. docker stop/docker kill

    • docker stop:优雅地停止一个运行中的容器,发送 SIGTERM 信号,允许进程进行清理。
    • docker kill:立即停止一个运行中的容器,发送 SIGKILL 信号,强制终止进程。
  14. paused

    • 容器状态,表示容器中的所有进程已被暂停。
  15. exited

    • 容器状态,表示容器中的主进程已经退出,容器已停止运行。
  16. deleted

    • 容器状态,表示容器已经被删除。

这些命令和状态提供了全面的工具集,允许用户管理 Docker 容器的整个生命周期,从创建、启动、暂停、停止到最终删除。这样可以灵活地控制应用程序的运行和资源的使用。

这篇关于【 0 基础 Docker 极速入门】镜像、容器、常用命令总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1020287

相关文章

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Nginx Location映射规则总结归纳与最佳实践

《NginxLocation映射规则总结归纳与最佳实践》Nginx的location指令是配置请求路由的核心机制,其匹配规则直接影响请求的处理流程,下面给大家介绍NginxLocation映射规则... 目录一、Location匹配规则与优先级1. 匹配模式2. 优先级顺序3. 匹配示例二、Proxy_pa

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

Linux基础命令@grep、wc、管道符的使用详解

《Linux基础命令@grep、wc、管道符的使用详解》:本文主要介绍Linux基础命令@grep、wc、管道符的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录grep概念语法作用演示一演示二演示三,带选项 -nwc概念语法作用wc,不带选项-c,统计字节数-

Python中OpenCV与Matplotlib的图像操作入门指南

《Python中OpenCV与Matplotlib的图像操作入门指南》:本文主要介绍Python中OpenCV与Matplotlib的图像操作指南,本文通过实例代码给大家介绍的非常详细,对大家的学... 目录一、环境准备二、图像的基本操作1. 图像读取、显示与保存 使用OpenCV操作2. 像素级操作3.

python操作redis基础

《python操作redis基础》Redis(RemoteDictionaryServer)是一个开源的、基于内存的键值对(Key-Value)存储系统,它通常用作数据库、缓存和消息代理,这篇文章... 目录1. Redis 简介2. 前提条件3. 安装 python Redis 客户端库4. 连接到 Re

MySQL基本查询示例总结

《MySQL基本查询示例总结》:本文主要介绍MySQL基本查询示例总结,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Create插入替换Retrieve(读取)select(确定列)where条件(确定行)null查询order by语句li

SpringBoot基础框架详解

《SpringBoot基础框架详解》SpringBoot开发目的是为了简化Spring应用的创建、运行、调试和部署等,使用SpringBoot可以不用或者只需要很少的Spring配置就可以让企业项目快... 目录SpringBoot基础 – 框架介绍1.SpringBoot介绍1.1 概述1.2 核心功能2