开始学习; //xia栽ke ://kuxueit.cn/5184/ 一、为什么要安装docker?
- Docker原理 往简单了说,Docker是个沙箱环境。你可以创建很多个沙箱空间,然后在每个沙箱中部署不同的程序。比如沙箱A里面部署MySQL,沙箱B中部署MariaDB。沙箱之间是物理隔绝的,只有网络可以联通,所以MariaDB和MySQL程序包的冲突,在Docker中完全体现不出来。
因为Docker环境给每个沙箱都创建了虚拟网卡,所以每个沙箱都有自己的内网IP地址,沙箱之间可以通过网络相互调用,这就能搭建数据库集群或者部署项目了。沙箱的内网IP在Docker环境之外是无法访问的,所以等我们创建沙箱的时候,需要把沙箱的某个端口映射到Linux系统的某个端口,这样在Docker之外才能用网络访问Docker容器里面的程序。
镜像和容器 Docker为了最大化的共享资源,减少资源浪费,创造出了镜像技术。镜像是沙箱之间相同的部分,差异化的部分叫做容器。比如说一个Java镜像,里面安装了JDK1.8,然后我为这个镜像创建出2个容器,这两个容器共享使用JDK镜像中的Java环境,并且我可以在每个容器中部署不同的Java程序。如果Docker没有镜像技术,我们只能分别在两个容器中安装JDK环境,这就造成了不必要的重复浪费。
创建Docker镜像的方式有多种,比如说你把要安装的程序和脚本写成Dockerfile文件,然后执行特殊的命令,Docker就会按照你的要求创建出镜像。或者说你利用现有的容器,在里面安装程序写好脚本,然后把这个容器逆向创建出镜像也可以。甚至说你不想自己创建镜像,也可以去DockerHub网站上下载别人创建的镜像。比如MySQL镜像、HBase镜像、JDK镜像、Python镜像等等。你把镜像下载下来,导入Docker环境,然后创建容器就可以使用MySQL、HBase这些东西了,特别节省时间。
二、安装Docker环境
- 关闭SELINUX服务 SELINUX是CentOS自带的安全服务,因为晦涩难用,并且跟很多程序冲突,所以强烈建议大家关闭这个服务。
- 更新yum程序 yum命令是CentOS自带的软件包管理器,我们安装Docker之前,最好能先更新一下yum命令,然后等上十分钟左右与,yum就更新好了。
代码块:
yum update -y
- 安装Docker 执行安装命令,Docker就自动安装好了。
代码块:
yum install docker -y
- 管理Docker 启动和关闭Docker服务,可以通过下面的命令完成。每次启动Linux系统,别忘了要运行Docker服务,切记!
代码块:
service docker start
service docker stop
查看Docker中的镜像列表,可以执行下面的命令。
代码块:
service docker start
service docker stop
查看Docker中的镜像列表,可以执行下面的命令。
代码块:
docker images
想要删除某个镜像可以用下面的命令。
代码块:
docker rmi 镜像名字