作为一名新人小白,目前是高三毕业生。初见编程还是通过朋友种草,认识了“飞天加速计划·高校学生在家实践”活动并参与其中(主要还是能白嫖)。使用了近两周云服务器。我通过它了解以往未曾关注的服务器功能,对服务器有了更加深刻的认识。
云服务器的特性我想便是便捷性。首先和自建服务器不同的是可以一键更换操作系统,对于测试人员十分友好。其次,云服务器有自己分配的公网IP,无需向运营商单独申请,省去了很多麻烦的步骤。然后,拥有一台服务器对学习编程也有很大的帮助,比如网络上挂载的一些测试环境,虽然方便但是缺失了自己亲自部署服务和调教的乐趣。但在阿里云优秀的社区生态中学习图谱帮助我优化了技术缺陷,开拓了我的整体视野,加深了对编程概念的把握。
Docker
1.认识Docker技术
首先,让我们来给Docker粗浅地定性:把Docker比作集装箱,操作各种货物的打包——将各种应用程序和他们所依赖的运行环境打包成标准的容器,容器之间隔离。Docker容器是基于Docker镜像创建
Docker的组成:
1.主操作系统
2.Docker守护进程 简易操作(开启、关闭、重启等)
3.依赖
4.应用
Docker的进程虚拟化本质上是虚拟化技术的一种,
2.虚拟化技术区别 Docker、KVM虚拟机、VT虚拟化技术...
Docker与一些主流模拟器其中的VT虚拟化技术的区别是什么呢?早在初中时期我测试模拟器的时候,就不得不去Bios中打开VT选项,用以提升性能(主要是硬件确实带不起来),后来慢慢接触了KVM虚拟机。而现在通过专项性的学习使我认识到了KVM虚拟机和Docker容器技术的区别。
~技术种类不一样
我们要明确Docker容器技术属于操作系统层虚拟化的范畴,然而VT技术则属于硬件辅助虚拟化
~依赖与硬件、实现的形式不同
KVM虚拟机需要物理硬件支持,如CUP开启VT虚拟化等;而Docker只依赖于Linux内核,可以在任何的Linux系统中启动
~资源利用率
Docker的资源占用率更少,相对比KVM虚拟机更节约资源
3.总结:Docker容器技术和KVM虚拟机的优劣对比:
●便捷性:不需要物理机硬件支持,Docker也可以在云主机上直接运行
●隔离性:Docker对linux系统中的进程进行封装隔离,使用沙箱机制,相互之间不会有任何接口,可以提供非常接近宿主机的性能
●兼容性:而KVM虚拟机隔离比Docker更高,KVM虚拟机支持的操作系统类型更多