Docker背后的内核知识 当谈论Docker时,常常会聊到Docker的实现方式.很多开发者都知道,Docker容器本质上是宿主机上的进程.Docker通过namespace实现了资源隔离.通过cgroups实现了资源限制,通过写时复制机制实现了高效的文件操作.但更进一步深入namespace和cgroups等技术细节时,大部分开发者都会感到茫然无措.所以在这里,先带领大家走进Linux内核,了解namespace和cgroups的技术细节. namespace资源隔离 想要要实现一个资源隔离…
转载请注明来源,本博客原创作者为:http://blog.csdn.net/minimicall?viewmode=contents 在Docker使用中,常常会碰到删除镜像不成功.反而让镜像变成了<none > <none>即,没名字,没Tag的镜像. root@iZ28ikebrg6Z:/var/run# docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE <none> <none> de…
先说和虚拟化技术的区别: 难道虚拟技术就做不到吗? 不不不,虚拟技术也可以做到,但是会有一定程度的性能损失,灵活度也会下降.容器技术不是模仿硬件层次,而是 在Linux内核里使用cgroup和namespaces来打造轻便的.将近裸机速度的虚拟技术操作系统环境.因为不是虚拟化存储,所以容器技术不会管 底层存储或者文件系统,而是你放哪里,它操作哪里. 这从根本上改变了我们如何虚拟化工作负载和应用程序,因为容器速度比硬件虚拟化技术更快,更加便捷,弹性扩容的更加高效,只是它的工作负载要求操作系统,而不…
cgroups资源限制 上一节中Docker背后的内核知识(一),我们了解了Docker背后使用的资源隔离技术namespace,通过系统调用构建了一个相对隔离的shell环境,也可以称之为简单的“容器”.这一节将讲解另一个强大的内核工具——cgroups.它不仅可以限制被namespace隔离起来的资源,还可以为资源设置权重.计算使用量.操控任务(进程或线程)开启和暂停等等.在介绍完基本概念后,将详细讲解Docker中使用到的cgroups内容. cgroups是什么cgroups(Contr…
镜像的定制实际上就是定制每一层所添加的配置.文件. 如果我们可以把每一层修改.安装.构建.操作的命令都写入一个脚本,用这个脚本来构建.定制镜像,那么之前提及的无法重复的问题.镜像构建透明性的问题.体积的问题就都会解决. 这个脚本就是 Dockerfile. Dockerfile 是一个文本文件,其内包含了一条条的 指令(Instruction),每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建. 因为每一条指令构建一层,而且每一层构建好后,就不会再变化.为了使镜像尽可能地小而且…
现在很多公司项目部署都是采用K8S docker容器方式,出门面试被问的概率极大,如果被面试官问docker相关知识点直接懵逼,那么基本就是被pass了,除非其他方面技术过硬.所以这种相对前沿的技术,就算达不到精通的程度,起码还是要了解基础理论和操作 一.安装docker Docker要求运行在Centos 7上,要求系统为64位,系统内核版本3.10以上 uname -an 查看当前系统版本 yum -y install docker 下载安装docker service docker sta…
官方文档地址:https://www.docker.com/get-started 中文参考手册:https://docker_practice.gitee.io/zh-cn 笔记原作者:陈艳男 B站主页,更多笔记下载 什么是 Docker Docker是一款开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或 Windows机器上.他基于虚拟化技术为每个镜像创建独立的容器,相互之间不干扰,可以做到秒级启动程序. 最新官网首页:https…
目录 一.系统环境 二.前言 三.使用registry搭建私有镜像仓库 3.1 环境介绍 3.2 k8smaster节点配置镜像仓库 3.3 k8sworker1节点配置从私有仓库上传和拉取镜像 3.3.1 上传镜像到私有仓库 3.3.2 从私有仓库里拉取镜像 四.附录:删除私有仓库镜像的Python脚本 一.系统环境 服务器版本 docker软件版本 CPU架构 CentOS Linux release 7.4.1708 (Core) Docker version 20.10.12 x86_6…
目录 一.系统环境 二.前言 三.Harbor 四.使用harbor搭建私有镜像仓库 4.1 环境介绍 4.2 k8smaster节点安装配置harbor 4.2.1 安装harbor离线包 4.2.2 配置harbor用户信息,项目信息 4.3 k8sworker1节点配置从harbor私有仓库上传和拉取镜像 4.3.1 上传镜像到harbor私有仓库 4.3.2 从harbor私有仓库里拉取镜像 一.系统环境 服务器版本 docker软件版本 CPU架构 CentOS Linux relea…
docker的常用命令: docker pull 获取imagedocker build 创建imagedocker images 列出imagedocker run 运行containerdocker stop 停止containerdocker rmi 删除imagedocker ps 列出containerdocker ps -a 列出container的历史记录docker rm ["idlist"]删除contain多个历史记录docker run -p 8080:80 -d…