dockerd守护进程

Dockerd(Docker Daemon)是 Docker 引擎的守护进程,是运行在后台的一个持续运行的进程,负责管理 Docker 容器、镜像、网络和存储等核心功能。它是 Docker 容器的守护进程,负责接收 Docker API 请求并管理容器的生命周期。

以下是 Dockerd 守护进程的主要概念和功能:

  • 容器管理: Dockerd 负责创建、启动、停止、重启和删除容器。它监控容器的运行状态,并处理容器的生命周期事件。

  • 镜像管理: Dockerd 负责管理 Docker 镜像,包括下载、构建、上传和删除镜像。它从 Docker Hub 或其他镜像仓库中下载镜像,并在本地存储和管理镜像。

  • 网络管理: Dockerd 负责管理容器的网络,包括创建和管理容器的网络接口、端口映射和网络连接。它允许容器之间进行通信,并提供网络隔离和安全性。

  • 存储管理: Dockerd 负责管理容器的数据存储,包括挂载数据卷、管理容器的文件系统和存储卷。它允许容器访问宿主机上的文件系统,并提供持久化存储解决方案。

  • 事件监控: Dockerd 监控 Docker 容器和服务的事件,如容器的创建、启动、停止和删除等事件。它生成日志和事件信息,可以供管理员进行监控和调试。

  • 安全性: Dockerd 实现了一系列安全功能,包括容器隔离、访问控制、认证和授权,保证容器和宿主机的安全性。

总的来说,Dockerd 守护进程是 Docker 引擎的核心组件,负责管理和运行 Docker 容器,提供了一整套功能和 API 接口,使得用户可以方便地创建、部署和管理容器化应用。 Dockerd 的稳定运行对整个 Docker 环境的正常运作至关重要。

Docker 内部卷(Internal Volume)

Docker 内部卷(Internal Volume)是 Docker 容器中用于存储数据的一种机制,它提供了一种持久化存储数据的方式,使得容器中的数据可以在容器重启或重新部署时得以保留。与容器内部的文件系统相比,Docker 内部卷具有以下特点和优势:

持久化存储: Docker 内部卷的数据被存储在宿主机的文件系统中,而不是在容器本身的文件系统中。这意味着即使容器被删除或重新创建,数据仍然可以被保留下来。

独立于容器生命周期: 内部卷的数据不会随着容器的生命周期而改变,因此可以确保数据的持久性和一致性。

方便管理: Docker 内部卷可以通过 Docker 命令或 Docker API 进行管理,包括创建、删除、挂载、卸载等操作,使得数据管理更加方便和灵活。

与主机文件系统隔离: 内部卷的数据存储在宿主机的文件系统中,与容器的文件系统隔离,从而保证了数据的安全性和隔离性。

通常情况下,Docker 内部卷用于存储容器中重要的数据,如数据库文件、日志文件、配置文件等。通过使用内部卷,可以确保这些数据在容器重新部署或迁移时不会丢失,并能够保持数据的一致性和持久性。

在 Docker 中,可以通过指定 –volume 或 –mount 参数来创建并挂载内部卷到容器中,从而实现容器中数据的持久化存储。

–mount
--mount type=bind,source=dockerd_volume,target=/var/lib/docker

这是 Docker 命令中的 –mount 参数的一种用法,用于将宿主机上的目录(source)绑定到容器内部的目标路径(target)。下面是对这个命令的解释和理解:

–mount: 这是 Docker 容器运行时使用的参数,用于挂载卷到容器中。
type=bind: 这表示挂载类型为绑定挂载,也就是将宿主机上的目录绑定到容器中。
source=dockerd_volume: 这里的 dockerd_volume 是宿主机上的目录或卷的路径,作为挂载的源。
target=/var/lib/docker: 这是容器内部的目标路径,宿主机上的目录或卷将被挂载到容器中的这个目标路径上。
因此,这条命令的含义是将宿主机上的 dockerd_volume 目录绑定到容器内部的 /var/lib/docker 目录中,使得容器可以访问并操作宿主机上的这个目录。这种绑定挂载的方式通常用于在容器内读写宿主机上的数据,实现数据共享和持久化存储的需求。

Docker 数据卷(Volume)

Docker 数据卷(Volume)的地址取决于宿主机的文件系统,可以通过 Docker 命令来查看数据卷的具体路径。在 Docker 中,数据卷通常是在宿主机的特定目录下创建的,并且 Docker 会为每个数据卷生成一个唯一的标识符,用于管理和识别数据卷。

可以使用以下命令来查看 Docker 中已创建的数据卷以及它们在宿主机上的具体路径:

docker volume inspect {VOLUME_NAME}
其中,{VOLUME_NAME} 是你要查看的数据卷的名称。执行上述命令后,Docker 会返回有关该数据卷的详细信息,包括数据卷在宿主机上的路径。在返回的 JSON 结果中,你可以查找 Mountpoint 字段,该字段表示数据卷在宿主机文件系统上的具体路径。

通过查看数据卷的路径,你可以了解数据卷在宿主机上的具体位置,以便进行数据的备份、恢复和管理操作。

docker hub上传

https://blog.csdn.net/qq_39629343/article/details/80158275
如何将自己的镜像上传到Docker hub上
1.首先需要拥有自己的Docker hub账号,注册地址

2.使用Docker hub账号在验证本地登录

3.先docker images看看本地的镜像
如果REPOITORY的名不是你Docker hub账号和仓库,即Docker ID/仓库名,是上传不成功的

当然可以使用docker tag 镜像ID 用户名称/镜像源名(repository name):新的标签名(tag)来更改

4.使用docker inspect查看获取容器/镜像的元数据。
5.使用docker push命令将镜像上传到docker hub的仓库
上传格式:docker push/:

原文链接:https://blog.csdn.net/qq_39629343/article/details/80158275

docker 删除本地镜像

https://yeasy.gitbook.io/docker_practice/image/rm
本地没有镜像但是如果在远端有,则会自动从docker hub下载。