阿里云ECS服务器安装docker教程(详细图文)-阿里云开发者社区

开发者社区> 开发与运维> 正文

阿里云ECS服务器安装docker教程(详细图文)

简介: Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。理由很简单,用了的人都说好用。在多系统的分布式项目中,往往传统的部署发包等操作,那是让每个上线的程序员恨的牙痒呀。通常都是通宵奋战,上生产解决各种部署发包问题。


一、为什么要使用Docker?


理由很简单,用了的人都说好用。在多系统的分布式项目中,往往传统的部署发包等操作,那是让每个上线的程序员恨的牙痒呀。通常都是通宵奋战,上生产解决各种部署发包问题。


个人简单总结一下三点:


1.部署简单且灵活,有独立的运行环境,避免了不必要的冲突。


2.节省了资源开销


3.类似于java, 打包一次各处部署运行。项目迁移灵活便捷。


二、什么是docker呢?


在讲之前,先来说说什么时容器?什么时虚拟机?


看下图:


image


简单解释一下,图左为容器,图右为虚拟机。


Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。


两图比较,我们可以看到在容器中是由docker分配给项目独立的虚拟资源,项目运行是与底层系统隔离开来的。但虚拟机中可以看到项目运行是直接分配资源与底层系统交互。显然,如果App2不工作了,对于容器来说系统资源会运用在App1和3上。而对于VM,由于资源已经分配出去,所以就会出现利用率不高情况。


区别:

特性 容器 虚拟机
启动 秒级 分钟级
硬盘使用 一般为MB 一般为GB
性能 接近原生 弱于
系统支持量 单机支持上千个容器 一般是几十个

docker架构图:


image


解释:


Client:


docker client: 客户端提供操作指令给用户,用以连接服务端操作docker。


docker Machine:是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。


Hosts:


container:一个独立运行的容器,每个容器之间没半毛钱关系,也不影响对方。


registers:


image:是一个镜像文件,host主机从远程仓库拉去image镜像后,可以创建container容器,然后执行运行容器。


简单来讲,docker先安装到本机后,通过docker客户端操作指令,拉去远程docker仓库中已经打包好的项目镜像文件到本地。然后通过指令操作镜像创建容器,最后启动容器完成部署。


详细关于镜像的问题可以参考_:_Docker _镜像_基本操作 - 容器_镜像_服务


三、安装docker


说了这么多,不如安装后实际操作一把,就什么都知道啦~


安装环境:


centos7


安装命令:


yum install docker


设置开机自动启动:


service docker start


查看版本:


docker version


image


修改docker仓库地址:


命令:


vi /etc/docker/daemon.json


内容:


{ “registry-mirrors”: “https://registry.docker-cn.com”, “live-restore”: true }


四、简单的实践-部署ActiveMq


1.拉取mq镜像


命令:docker pull rabbitmq:management


2.运行启动


命令:docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:management


3.访问管理界面的地址


就是 http://[宿主机IP]:15672,可以使用默认的账户登录,用户名和密码都guest


五、Docker操作命令


$ docker ps // 查看所有正在运行容器


$ docker stop containerId // containerId 是容器的ID


$ docker ps -a // 查看所有容器


$ docker ps -a -q // 查看所有容器ID


$ docker stop (docker ps -a -q) // stop停止所有容器 docker rm $(docker ps -a -q) // remove删除所有容器


云服务器ECS地址:阿里云·云小站


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章