docker流行起来,确定是能够解决一些痛点:html
一、复杂的环境搭建linux
安装一个软件可能有各类依赖关系极为复杂,Docker能够吧环境依赖打包在一块儿只须要一条命令就能够开箱使用docker
二、隔离性json
每一个用户实例之间相互隔离, 互不影响。 好比你的程序A须要使用PHP7.0,程序B须要使用PHP7.2,可是程序A不能使用PHP7.2,在虚拟的时候你只能选择开两台,使用docker就能够在同一台服务器互不影响的状况下顺利运行centos
三、可配额/可度量bash
每一个用户实例能够按需提供其计算资源,所使用的资源能够被计量。 笔者在运营环境出过一次事故,大体是A应用除了点问题致使CPU吃高,其余程序所有都没法访问,有的docker能够定额分配资源限制不重要的程序不会影响到重要的程序服务器
四、移动性工具
用户的实例能够很方便地复制、移动和重建以及回滚。性能
五、基本不增长额外的性能消耗 Docker直接移植于Linux内核之上,经过运行Linux进程将底层设备虚拟隔离,这样系统性能的损耗也要比虚拟机低的多,几乎能够忽略。同时,Docker应用容器的启停很是高效,能够支持大规模的分布系统的水平扩展,真正给企业开发带来福音。阿里云
六、DevOps持续迭代交付 Docker技术将应用以集装箱的方式打包交付,使应用在不一样的团队中共享,经过镜像的方式应用能够部署于任何环境中。这样避免了各团队之间的协做问题的出现,成为企业实现DevOps目标的重要工具。以容器方式交付的Docker技术支持不断地开发迭代,大大提高了产品开发和交付速度。
本文操做都是在centos7 64位系统之上
1、首先进入官网文档,安装:
官网两种安装方式
一、yum安装
二、rpm下载到本地安装
2、配置用户组(非root用户登陆设置)
3、内置镜像
一、官网镜像:
https://hub.docker.com/
然而因为国情,根本下载不了 - -!
二、国内镜像
https://dev.aliyun.com/search.html
登陆阿里云镜像中心,进入控制台
执行如下命令
sudo mkdir -p /etc/docker #建立文件夹docker sudo tee /etc/docker/daemon.json <<-'EOF' #利用tee命令把下面的配置写入daemon.js { "registry-mirrors": ["https://ddbrfjm6.mirror.aliyuncs.com"] # 这里要改为本身的地址 } EOF sudo systemctl daemon-reload # 从新加载配置文件,扫描新的或有变更的单元 sudo systemctl restart docker # 重启docker