docker-集成测试搭建

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
shell 复制代码
--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下载。

相关推荐
Elastic 中国社区官方博客11 小时前
使用真实 Elasticsearch 进行高级集成测试
大数据·数据库·elasticsearch·搜索引擎·全文检索·jenkins·集成测试
杨浦老苏12 小时前
开源音乐管理软件Melody
docker·群晖·多媒体
杨浦老苏14 小时前
面向npm的实时仪表板Dashly
网络·docker·群晖·导航
JunLan~15 小时前
Docker 部署 GLPI(IT 资产管理软件系统)
运维·docker·容器
特立独行的猫a17 小时前
使用 Docker(Podman) 部署 MongoDB 数据库及使用详解
数据库·docker·podman
LUCIAZZZ19 小时前
基于Docker以KRaft模式快速部署Kafka
java·运维·spring·docker·容器·kafka
特立独行的猫a1 天前
Golang 应用的 Docker 部署方式介绍及使用详解
开发语言·docker·golang
康世行1 天前
Windows环境下MaxKB大模型 Docker部署图文指南
windows·docker·容器
程序员石磊2 天前
学术总结Ai Agent中firecrawl(大模型爬虫平台)的超简单的docker安装方式教程
人工智能·爬虫·docker
司江龙2 天前
centos7 配置国内镜像源安装 docker
运维·docker·容器