Docker的介绍以及部署
2017-02-25 本文已影响0人
shepherdking
Docker是什么?
Docker是新一代的PAAS平台。Docker实际上是一个容器,这个容器可以打包在工程中开发、测试、运维等需要的一切组件,很方便的处理软件组件的依赖关系等。可以用Docker来制作包含了自己产品的镜像,然后由docker hub(类似github)或者其他的私仓(一般公司内部使用)管理。
在工程中的主要应用是保持研发、测试、运维的开发测试环境的一致性,以及为产品迁移时提供便利。
它的核心技术包括cgroups,AUFS,LXC,namespace等,主要为一些虚拟化、资源隔离等技术。
举个例子,你制作了一个包含了mysql+mycat的镜像,并且上传了仓库,那么别人在使用你的产品的时候,就可以直接在服务器上从你的仓库pull下来,然后运行这个镜像,把对应的端口给暴露出来(实际上从镜像的实例到服务器端口的一个映射),你的产品就可以正常在服务器上面运行了。
Docker的部署
Docker是一个非分布式的软件,所以部署起来比较简单。
安装Docker
以CentOS7为例,使用root
yum install -y docker
更新docker的源
vim /etc/yum.repo.d/docker.repo
加入以下内容
[docker repo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
然后安装
yum install -y docker-engine
设置Docker
需要把docker的Daemon作为一个开启自启动的服务
systemctl start docker.service
systemctl enable docker.service
以及一些网络设置,如果不关闭防火墙的话,docker可能无法正常工作,还有如果不设置ip_forward,会导致在docker运行一个容器的时候无法在容器内部使用网络
systemctl disable firewalld
vim /etc/sysctl.conf #命令1(编辑配置文件)
net.ipv4.ip_forward=1 # 设置转发
sysctl –p
另外,如果以后在使用docker命令的时候遇到error response xxx disconnected等报错,一般是你无法访问docker hub,需要设置代理。