目录 1.云计算的概念 2.示例说明云计算 3.小故事说明云计算 "云计算"这个词,相信大家都非常熟悉. 作为信息科技发展的主流趋势,它频繁地出现在我们的眼前.伴随它一起出现的,还有这些概念名词--OpenStack.Hypervisor.KVM.Docker.K8S等. 这些名词概念,全部都属于云计算技术领域的范畴. 对于初学者来说,理解这些概念的具体含义并不是一件容易的事情. 1.云计算的概念 所谓云计算,核心需要理解的是到底什么是云. 企业各自搭建服务耗费巨大,于是就出有人想到能…
目录 1.云计算中虚拟化技术和容器技术到的关系 2.虚拟机和容器对比 3.虚拟化技术和容器技术区别 1.云计算中虚拟化技术和容器技术到的关系 通过一个关于房间和住人的小问题,我们来初步的理解一下虚拟化技术和容器技术的关系. 首先有一个大前提就是一个房间只允许一家人来住.这个房间很大,500平米,有床.有厨房.有卫生间.你一家一共就3口人,就你一家人住,别人家只好再找房子,好浪费,资源利用率好低啊.(房子就相当于计算机的硬件基础) 首先是虚拟化上场了,把这个大房子从隔成20间小房子.注意不是那种真…
目录 1.最底层的,就是IaaS 2.再往上,就是PaaS 3.继续往上,就是SaaS 4.IaaS.SaaS.PaaS三者之间的关系 上一篇文章详细介绍了什么是云计算: 云是一种服务,可以像使用水.电.煤那样按需使用.灵活付费,使用者只需关注服务本身. 云计算的资源是动态扩展且虚拟化的,通过互联网提供,终端用户不需要了解云中基础设施的细节,不必具有专业的云技术知识,也无须直接进行控制,只要关注自身真正需要什么样的资源,以及如何通过网络来获得相应的服务即可. 按照服务划分,云计算可以分为IaaS…
目录 1.IaaS服务模式 2.PaaS服务模式 (1)何时使用PaaS (2)PaaS的特点 (3)PaaS优势 3.SaaS服务模式 云计算通俗来说就是输入/输出和计算不在一个主机上.计算要用到计算设备,计算设备一般是指CPU.内存和硬盘,输入/输出设备一般是指键盘.鼠标.显示器.耳机.音响.话筒等外设.而我们的个人计算机是使用主板将这些东西连接到一起来协调工作. 一个软件在执行以完成某项任务的时候,如果用到的计算设备和输入/输出设备不是通过主板连接,而是通过网络连接,那么这个过程就叫云计算…
目录 1.虚拟化的概念 2.为什么出现虚拟化 3.虚拟化技术 1.虚拟化的概念 虚拟化是指通过虚拟化技术将计算机虚拟为多台逻辑计算机.在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率. 2.为什么出现虚拟化 由于x86服务器的限制,许多IT组织必须部署多个服务器,每个服务器只能以其容量的一小部分运行,以满足当今的高存储和处理需求.其结果是:效率极低,运维成本过高. 采用虚拟化技术来模拟硬件功…
目录 1.按照虚拟化的程度分类 (1)完全虚拟化技术 (2)半虚拟化技术 (3)完全虚拟化与半虚拟化优缺点 2.从虚拟化架构分类 (1)寄居架构 (2)裸金属架构 虚拟化是一个广义的术语,是指计算元件在虚拟的基础上而不是真实的基础上运行,是一个为了简化管理,优化资源的解决方案.如同空旷.通透的写字楼,整个楼层没有固定的墙壁,用户可以用同样的成本构建出更加自主适用的办公空间,进而节省成本,发挥空间最大利用率.这种把有限的固定的资源根据不同需求进行重新规划以达到最大利用率的思路,在IT领域就叫做虚拟…
目录 1.什么是Docker容器数据卷 2.数据卷的作用 3.数据卷的使用 1.什么是Docker容器数据卷 Docker容器数据卷,即Docker Volume(卷). 当Docker容器运行的时候,会产生一系列的数据文件,这些数据文件会在关闭Docker容器时,直接消失的.但是其中产生部分的数据内容,我们是希望能够把它给保存起来,另作它用的. 所以我们期望: 将应用与运行的环境打包形成容器运行,伴随着容器运行产生的数据,我们希望这些数据能够持久化. 希望容器之间也能够实现数据的共享. 根据我…
目录 1.什么是Docker? 2.Docker的出现解决了什么问题? 3.Docker的特别之处 4.Docker相关网站 1.什么是Docker? 2010年dotCloud公司在旧金山成立,PAAS平台的服务供应商:2013年dotCloud更名为Docker股份有限公司(Docker,Inc).Docker公司专注开源容器引擎的开发,他们的容器引擎产品就叫Docker,基于Go语言开发,并遵从Apache2.0协议. Docker的主要目标是"Build,Ship and Run Any…
目录 1.前提 2.通过yum安装Docker (1)更新yum包 (2)移除旧的Docker版本 (3)安装必须的软件包 (4)设置稳定yum源仓库 (5)更新yum软件包索引 (6)开始安装Docker-ce (7)查看Docker版本信息 (8)启动Docker (9)查看Docker状态 (10)加入开机启动 (11)验证Docker是否正确安装 (12)查看本地Docker镜像 (13)停止Docker运行 CentOS环境下的Docker官方推荐的三种安装方式 yum安装方式 脚本安…
目录 1.问题复现 2.解决冲突 3.重新安装docker-ce-selinux 4.安装Docker-ce 5.总结 通过yum安装Docker的时候,安装20版本的Docker没有出现问题,在安装17版本的时候,出现了问题. 问题复现,下面记录一下这个问题. 1.问题复现 (1)安装17.03版本Docker 执行 [root@localhost ~]# yum install docker-ce-17.03.0.ce 已加载插件:fastestmirror Loading mirror s…
CentOS环境下的Docker官方推荐的三种安装方式 yum安装方式 本地RPM安装方式 脚本安装方式 目录 1.下载Docker的RPM安装包 2.安装Docker 3.通过RPM安装包安装Docker出现的问题 如果无法使用yum方式安装Docker,可以通过先下载Docker的RPM包,然后在本地进行安装. 这种方式在工作的时候推荐使用,因为容易统一环境. 1.下载Docker的RPM安装包 (1)方式一 通过阿里云镜像网站下载RPM包. https://mirrors.aliyun.c…
Docker官方提供方便用户操作的安装脚本,用起来是非常方便.但是要注意的是,使用脚本安装Docker,是安装最新版本的Docker. 注意:不建议在生产环境中使用安装脚本.因为在生产环境中一定不要最新版本,一定要用一个成熟稳定版.如果没有安全性更新,只是简单的常规的功能性更新,并且更新的功能中没有你需要用的需求,建议不更新. # 执行这两行命令就好,非常简单 $ curl -fsSL https://get.docker.com -o get-docker.sh #下载安装脚本 $ sudo…
目录 1.查询Docker安装过的包 2.卸载Docker软件包 3.删除残留目录 4.验证是否卸载 5.20版本Docker卸载(官方文档) 1.查询Docker安装过的包 执行yum list installed | grep docker或# rpm -qa|grep docker命令. [root@localhost docker]# yum list installed | grep docker docker-ce.x86_64 17.03.0.ce-1.el7.centos @/d…
目录 1.Docker的底层原理 2.Docker中常用的基本概念 3.run命令的运行流程 4.为什么Docker比VM快 Docker架构图: 我们依照Docker架构图进行Docker基础概念的说明. 1.Docker的底层原理 Docker是一个Client-Server结构的系统,Docker守护进程运行在主机上,然后通过Socket连接从客户端访问,守护进程从客户端接受命令并管理运行在主机上的容器.容器是一个运行时环境,就好比是我们前面说到的集装箱. 例如架构图中的客户端(Clien…
目录 1.新建并启动容器 2.列出当前所有正在运行的容器 3.退出容器 4.启动容器 5.重启容器 6.停止容器 7.强制停止容器 8.删除已停止的容器 有镜像才能创建容器,这是根本前提. 我们下载一个CentOS镜像作为演示. [root@192 ~]# docker pull centos Using default tag: latest latest: Pulling from library/centos 7a0437f04f83: Pull complete Digest: sha2…
提示:接上一篇 目录 9.后台启动容器 10.查看容器日志 11.查看容器内运行的进程 12.查看容器内部细节 9.后台启动容器 后台启动容器也叫启动守护式容器. 命令:docker run -d 镜像ID或镜像名 查看本地镜像. [root@192 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos latest 300e315adb2f 3 months ago 209MB 以后台模式启动centos容器. # 使用镜像…
目录 13.进入正在运行的容器并以命令行交互 (1)方式一 (2)方式二 (3)attach和exec的区别 14.从容器内拷贝文件到主机上 15.Docker常用命令小结 (1)容器生命周期管理 (2)容器操作 (3)镜像仓库 (4)容器rootfs命令 (5)本地镜像管理 (6)info|version 13.进入正在运行的容器并以命令行交互 我们通常使用容器的方式都是后台运行模式,如果需要进入容器,则有两种方式. docker attach 容器ID docker exec -it 容器I…
目录 步骤1:搜索镜像 步骤2:下载Nginx镜像 步骤3:运行Nginx镜像 步骤4:进行本机测试 步骤5:进入容器内操作 步骤6:测试外网访问容器 步骤1:搜索镜像 使用docker search命令进行搜索. 建议大家去Docker官方镜像仓库去搜索,地址https://hub.docker.com/,可以看到详细的帮助文档,和镜像的仓库源所支持的版本. 步骤2:下载Nginx镜像 使用docker pull命令,从Docker镜像库中拉取镜像. [root@192 ~]# docker…
目录 步骤1:搜索镜像 步骤2:下载Tomcat镜像 步骤3:运行Tomcat镜像 步骤4:本机和外网测试 步骤5:解决问题 补充:--rm选项 步骤1:搜索镜像 使用docker search命令进行搜索. 建议大家去Docker官方镜像仓库去搜索,地址https://hub.docker.com/,可以看到详细的帮助文档,和镜像的仓库源所支持的版本. 步骤2:下载Tomcat镜像 使用docker pull命令,从Docker镜像库中拉取镜像. [root@192 ~]# docker pu…
目录 1.Portainer介绍 2.Portainer安装启动 3.Portainer初始化配置 4.Portainer汉化 1.Portainer介绍 (1)Portainer 是一款轻量级的图形化管理工具,通过它我们可以轻松管理不同的 Docker 环境.Portainer 部署和使用都非常的简单,它由一个可以运行在任何 Docker 引擎上的容器组成. (2)Portainer 功能十分全面,提供状态显示面板.应用模板快速部署.容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操…
目录 1.镜像是什么 2.Docker镜像获取的方式 3.Docker镜像加载原理 (1)UnionFS(联合文件系统) (2)Docker镜像加载原理 1.镜像是什么 镜像是一种轻量级.可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码.运行时环境.库.环境变量和配置文件. 即:所有的应用,直接打包成Docker镜像,就可以直接跑起来! 2.Docker镜像获取的方式 从仓库中拉取镜像(docker pull). 从本地文件中载入镜像(…
目录 1.分层的镜像 2.加深理解 3.特别说明 1.分层的镜像 我们可以去下载一个镜像,注意观察下载的日志输出,可以看到Docker的镜像是一层一层的在下载. 思考:为什么Docker镜像要采用这种分层的结构呢? 最大的好处,我觉得莫过于是资源共享了! 比如有多个镜像都从相同的Base镜像构建而来,那么宿主机只需在磁盘上保留一份Base镜像,同时内存中也只需要加载一份Base镜像,这样就可以为所有的容器服务了,而且镜像的每一层都可以被共享. 查看镜像分层的方式可以通过docker image…
目录 1.commit命令作用 2.commit命令说明 3.示例演示 1.commit命令作用 在运行的容器中,并在镜像的基础上做了一些修改,我们希望保存起来,封装成一个新的镜像,方便我们以后使用,也就是提交容器副本,使之成为一个新的镜像. 即:docker commit,从容器创建一个新的镜像. 例如: 我们以Tomcat镜像为例,运行启动Tomcat镜像后得到Tomcat容器,我们在Tomcat容器中做了一些自定义的设计或者修改,使此时的Tomcat容器成为符合我们需求的容器,之后就可以通…
目录 1.验证容器和宿主机之间数据共享 2.容器停止退出后,主机修改后数据是否同步 3.带只读权限的挂载数据卷 1.验证容器和宿主机之间数据共享 通过上面的操作,接下来我们演示一下通过数据卷的挂载,实现容器和宿主机之间的数据共享. 步骤1:在宿主机中的HostDataVolume目录中创建host.txt文件. # 查看宿主机当前位置 [root@192 HostDataVolume]# pwd /home/HostDataVolume # HostDataVolume目录中创建host.txt…
目录 1.Volume命令说明 2.Volume命令的使用 (1)创建数据卷 (2)查看本地数据卷列表 (3)打印myVolume数据卷的详细信息 (4)删除数据卷 (5)删除所有未使用的数据卷 3.具名挂载和匿名挂载 (1)匿名挂载 (2)具名挂载 (3)Docker容器数据卷的默认挂载位置 Volume:即数据卷. Docker Volume命令能让容器从宿主主机中读取文件,或从容器中持久化数据到宿主主机内,让容器与容器产生的数据分离开来,一个容器可以挂载多个不同的目录. Volume的生命…
目录 1.搜索镜像 2.拉取镜像 3.查看镜像 4.启动镜像 5.操作容器 (1)在MySQL中创建数据库 (2)外部连接Dokcer容器中的MySQL服务 (3)查看挂载情况 (4)测试MySQL服务持久化 (5)问题说明 (6)MySQL数据库的数据备份 6.停止容器 7.移除容器 实战:解决MySQL的数据持久化的问题! 总体步骤: 搜索镜像 拉取镜像 查看镜像 启动镜像 操作容器(重点) 停止容器 移除容器 1.搜索镜像 搜索MySQL镜像,也可以在Docker官方镜像仓库中进行搜索.…
目录 1.简单了解一下DockerFile 2.通过DockerFile的方式挂载数据卷 (1)创建DockerFile文件 (2)编辑Dockerfile文件 (3)构建Dokcer镜像 (4)启动镜像,并操作镜像 (5)查看数据卷 1.简单了解一下DockerFile 我们这里先简单的概括一下DockerFile: Dockerfile就是用来构建Docker镜像的构建文件,是一个命令脚本. 通过这个脚本可以生成镜像,镜像是一层一层的,而脚本也是一个个的命令,每个命令都是一层. (理解到这里…
目录 1.数据卷容器的说明 2.数据卷容器共享数据原理 3.总结 4.练习:MySQL实现数据共享 1.数据卷容器的说明 (1)什么是数据卷容器 一个容器中已经创建好的数据卷,其它容器通过这个容器实现数据共享.那么这个容器,称之为数据卷容器.(也可以说叫父容器) (2)数据卷容器的作用 数据卷容器的作用就是,实现多个容器间的数据传递共享. 如果你有一些持续更新的数据需要在容器之间共享,最好创建数据卷容器. 数据卷容器,其实就是一个正常的容器,专门用来提供数据卷供其它容器挂载的. (3)需要使用的…
目录 1.DockerFile文件说明 2.Dockerfile构建过程解析 (1)Docker容器构建三步骤 (2)Dockerfile文件的基本结构 (3)Dockerfile注意事项 (4)Docker执行Dockerfile的大致流程 3.总结 4.DockerFile保留字指令 1.DockerFile文件说明 (1)DockerFile文件是什么 Dockerfile是用来构建Docker镜像的文本文件,文本内容包含了一条条构建镜像所需的指令.参数和说明. 即:Dockerfile仅…
目录 1.前提说明 2.编写Dockerfile文件 3.构建镜像 4.运行镜像 5.列出镜像的变更历史 1)目标:自定义镜像wokong_centos. 2)所用到的保留字指令: FROM:基础镜像,当前新镜像是基于哪个镜像的. MAINTAINER:镜像维护者的姓名和邮箱地址. RUN:容器构建时需要运行的命令. EXPOSE:当前容器对外暴露出的端口(端口映射). WORKDIR:指定在创建容器后,终端默认登陆进来的工作目录,一个落脚点,也就是pwd的位置. ENV:用来在构建镜像过程中设…