docker
文章平均质量分 93
我乐了.
这个作者很懒,什么都没留下…
展开
-
14-文件存储驱动:AUFS 文件系统原理及生产环境的最佳配置
联合文件系统(Union File System,Unionfs)是一种分层的轻量级文件系统,它可以把多个目录内容联合挂载到同一目录下,从而形成一个单一的文件系统,这种特性可以让使用者像是使用一个目录一样使用联合文件系统。那联合文件系统对于 Docker 是一个怎样的存在呢?它可以说是 Docker 镜像和容器的基础,因为它可以使 Docker 可以把镜像做成分层的结构,从而使得镜像的每一层可以被共享。原创 2024-01-11 16:57:11 · 743 阅读 · 0 评论 -
10-资源限制:如何通过 Cgroup 机制实现资源限制?
我们知道使用不同的 Namespace,可以实现容器中的进程看不到别的容器的资源,但是有一个问题你是否注意到?容器内的进程仍然可以任意地使用主机的 CPU 、内存等资源,如果某一个容器使用的主机资源过多,可能导致主机的资源竞争,进而影响业务。那如果我们想限制一个容器资源的使用(如 CPU、内存等)应该如何做呢?这里就需要用到 Linux 内核的另一个核心技术cgroups。那么究竟什么是cgroups?我们应该如何使用cgroups?Docker 又是如何使用cgroups的?下面我带你一一解密。原创 2024-01-11 16:39:55 · 758 阅读 · 0 评论 -
09-资源隔离:为什么构建容器需要 Namepace ?
下面是 Namespace 的维基百科定义:Namespace 是 Linux 内核的一项功能,该功能对内核资源进行分区,以使一组进程看到一组资源,而另一组进程看到另一组资源。Namespace 的工作方式通过为一组资源和进程设置相同的 Namespace 而起作用,但是这些 Namespace 引用了不同的资源。资源可能存在于多个 Namespace 中。这些资源可以是进程 ID、主机名、用户 ID、文件名、与网络访问相关的名称和进程间通信。原创 2024-01-11 16:32:37 · 1185 阅读 · 0 评论 -
08-容器监控:容器监控原理及 cAdvior 的安装与使用
到此,相信你已经可以使用 docker stats 和 cAdvisor 监控并查看容器的状态了;也可以自己启动一个 cAdvisor 容器来监控主机和主机上的容器,并对监控系统的原理有了较深的了解。原创 2024-01-11 16:30:50 · 993 阅读 · 0 评论 -
07-Docker 安全:基于内核的弱隔离系统如何保障安全性?
容器技术带来的技术革新是空前的,但是随之而来的容器安全问题也是我们必须要足够重视的。本课时解决 Docker 安全问题的精华我帮你总结如下:到此,相信你已经了解了 Docker 与虚拟机的本质区别,也知道了容器目前存在的一些安全隐患以及如何在生产环境中尽量避免这些安全隐患。原创 2024-01-11 16:24:48 · 993 阅读 · 0 评论 -
06-最佳实践:如何在生产中编写最优 Dockerfile?
在介绍最佳实践前,这里再强调一下,因为使用 Dockerfile 构建镜像可以带来很多好处:易于版本化管理,Dockerfile 本身是一个文本文件,方便存放在代码仓库做版本管理,可以很方便地找到各个版本之间的变更历史;过程可追溯,Dockerfile 的每一行指令代表一个镜像层,根据 Dockerfile 的内容即可很明确地查看镜像的完整构建过程;屏蔽构建环境异构,使用 Dockerfile 构建镜像无须考虑构建环境,基于相同 Dockerfile 无论在哪里运行,构建结果都一致。原创 2024-01-11 16:21:24 · 850 阅读 · 0 评论 -
05-仓库访问:怎样搭建属于你的私有仓库?
到这里我们的镜像仓库虽然可以本地访问和拉取,但是如果你在另外一台机器上是无法通过 Docker 访问到这个镜像仓库的,因为 Docker 要求非。公共镜像仓库一般是 Docker 官方或者其他第三方组织(阿里云,腾讯云,网易云等)提供的,允许所有人注册和使用的镜像仓库。其实我们不仅可以使用公共镜像仓库存储和分发镜像,也可以自己搭建私有的镜像仓库,那在搭建之前,我们先回顾下仓库的基础知识。有时候,出于安全或保密的需求,你可能想要搭建一个自己的镜像仓库,下面我带你一步一步构建一个私有的镜像仓库。原创 2024-01-11 16:18:20 · 833 阅读 · 0 评论 -
04-容器操作:得心应手掌握 Docker 容器基本操作
到此,我相信你已经了解了容器的基本概念和组成,并已经熟练掌握了容器各个生命周期操作和管理。那容器与镜像的区别,你应该也很清楚了。镜像包含了容器运行所需要的文件系统结构和内容,是静态的只读文件,而容器则是在镜像的只读层上创建了可写层,并且容器中的进程属于运行状态,容器是真正的应用载体。原创 2024-01-11 14:28:13 · 731 阅读 · 0 评论 -
03-镜像使用:Docker 环境下如何配置你的镜像?
到此,相信你已经对 Docker 镜像这一核心概念有了较深的了解,并熟悉了 Docker 镜像的常用操作(拉取、查看、“重命名”、删除和构建自定义镜像)及底层实现原理。镜像操作命令:拉取镜像,使用 docker pull 命令拉取远程仓库的镜像到本地;重命名镜像,使用 docker tag 命令“重命名”镜像;查看镜像,使用 docker image ls 或 docker images 命令查看本地已经存在的镜像;删除镜像,使用 docker rmi 命令删除无用镜像;原创 2024-01-11 14:24:36 · 1173 阅读 · 0 评论 -
02-核心概念:镜像、容器、仓库,彻底掌握 Docker 架构核心设计理念
containerd-shim 的主要作用是将 containerd 和真正的容器进程解耦,使用 containerd-shim 作为容器进程的父进程,从而实现重启 dockerd 不影响已经启动的容器进程。其中 dockerd 是一个非常重要的后台管理进程,它负责响应和处理来自 Docker 客户端的请求,然后将客户端的请求转化为 Docker 的具体操作。它和一般的 C/S 架构系统一样,Docker 服务端模块负责和 Docker 客户端交互,并管理 Docker 的容器、镜像、网络等资源。原创 2024-01-11 14:17:00 · 1122 阅读 · 0 评论 -
01-Docker 安装:入门案例带你了解容器技术原理
容器技术从 1979 年 chroot 的首次问世便已崭露头角,但是到了 2013 年,Dokcer 的横空出世才使得容器技术迅速发展,可见 Docker 对于容器技术的推动力和影响力。另外, Docker 还提供了工具和平台来管理容器的生命周期:使用容器开发应用程序及其支持组件。容器成为分发和测试你的应用程序的单元。可以将应用程序作为容器或协调服务部署到生产环境中。无论您的生产环境是本地数据中心,云提供商还是两者的混合,其工作原理都相同。原创 2024-01-11 14:11:53 · 882 阅读 · 0 评论