![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
容器技术核心要点
文章平均质量分 79
容器入门,看完这个基本就够了。
思竟
互联网从业者,人工智能公司SRE负责人。
展开
-
06|把你的Docker容器用起来
之前讲了很多原理性的东西,基本上已经把Docker的大概原理阐述了一遍,这次我们就通过运行一个实例,把Docker容器用起来。我们先自己用Go语言写一个简单的web服务器程序hello.go,然后再用Docker把它跑起来,Go程序源码如下:package mainimport ( "io" "net/http")func hello(w http.ResponseWriter, r *http.Request) { io.WriteString(w, "Hello w原创 2021-12-26 23:27:25 · 451 阅读 · 0 评论 -
05|容器技术基本原理之容器镜像
容器镜像是Docker公司的创新发明,它解决了应用程序的分发问题,在了解了Namespace和Cgroups的基本原理后,我们再来谈谈容器镜像的知识。我们说容器可以理解成一个被封闭起来的特殊进程,Cgroups限制了进程的最大资源使用量(相当于天花板),Namespace对资源进行了隔离(相当于围墙),下面还要对进程视角的文件系统进行一下限制(相当于地板),这样就全方位多角度的把进程封闭起来了。说起容器文件系统的限制,可以想到Namespace中包含一个Mount namespace,但是Mount原创 2021-11-30 20:33:02 · 1127 阅读 · 0 评论 -
04|容器技术基本原理之Cgroups
我们之前提到Docker容器是利用操作系统的Namespace和Cgroup机制来实现资源的隔离与限制,Namespace实现隔离已经在上一讲中说过了,本讲主要探讨使用Cgropu实现资源的限制。那么如何理解资源的隔离与限制呢?举个不一定严谨但通俗的例子,假如在公路上开车,资源隔离把公路划了多个子车道,你跑在其中一个子车道上,且你不知道有其它车道存在,你以为整条路都是你的,这时你就会“飘”,要超速,这时候就要限制你的资源,限制你的速度。那么在服务器资源上,就是对内存,CPU等资源进行限制了,防止一个进程占用原创 2021-11-20 16:52:48 · 1181 阅读 · 0 评论 -
03|容器技术基本原理之Namespace
以前被面试或者面试别人的时候,出现频率比较高的一个问题是:看你简历上写熟悉容器技术,那你是怎么理解容器的?还算可以的回答是:容器技术本身不是新的技术,容器本质上就是宿主机操作系统上的一个特殊的进程,利用Namespace和Cgroup技术实现了资源的隔离与限制,并且实现了容器镜像,解决了应用程序分发的问题。答到这里,可以说对容器的理解还是比较全面的了。Docker的安装:本不想写网上一搜一堆,且不需要理解的东西,但是看好多文章里写的安装过程,多少有点坑,所以还是写一下,安装过程就在ubuntu上操作原创 2021-11-18 23:17:01 · 2586 阅读 · 1 评论 -
02|容器技术发展史
夫以铜为镜,可以正衣冠;以史为镜,可以知兴替;以人为镜,可以明得失。我们学习一门新技术是需要时间成本的,我们希望学会以后能用它很久,但有些技术还没等学会,它就死了。还记得在大学的时候,选修里有Flash这门课程,可以做动画片,还能在网页中使用,于是课上课下花了不少时间去学,后来有一天,听说Chrome将不再支持Flash,这让Flash元气大伤,而我除了用Flash给当时的女友做了一个动画外,后来就再也没有用过。现在看来有这时间我去学点别的不好吗?所以啊,还是不能看什么火,看什么热就学什么,毕竟人的原创 2021-11-17 20:06:13 · 796 阅读 · 1 评论 -
01|被k8s弃用的docker还值得学吗?
首先抛出答案:Docker依然值得学习。我们先来聊聊Docker当前被用到哪些地方:作为k8s的容器运行时 作为开发者日常开发、运行程序、打包镜像使用即然k8s在新版本中已经准备弃用Docker, 那么在容器运行时这一应用场景下,已经可以放弃Docker了。但是Docker依然还是一款优秀的开发者工具,开发人员和运维人员可以方便的使用Dockerfile打包应用程序镜像,并且Docker镜像依然可以正常运行于k8s集群之上。另外基本上所有的容器技术实现也是大同小异的,可以说没有用到什原创 2021-11-16 19:32:14 · 3361 阅读 · 6 评论