云计算——Docker(1)

打印 上一主题 下一主题

主题 967|帖子 967|积分 2901

目录
学习任务
认识Docker
认识Docker的常用命令
制作一个kodexplorer网盘docker镜像
 认识Docker  
Docker诞生的配景
Docker的历史
Docker是什么
Docker可以干什么
为什么需要Docker
认识Docker的常用命令
制作Kodexplorer网盘docker镜像


学习任务



  • 认识Docker
  • 认识Docker的常用命令
  • 制作一个kodexplorer网盘docker镜像
 认识Docker  

【Docker 项目诞生于2013年初,最初是dotCloud公司内部的一个业余项目,基于Google公司推出的Go语言实现。项目后来参加了Linux基金会,遵从了Apache 2.0协议,项目代码在GitHub上举行维护】


  • Docker诞生的配景
        一个新技能的普及过程中,除了带有技能本身的酷炫色彩,一定也陪伴着生产效率的提升和成本的降低。
        在软件产品的传统开发流程中,软件从开发到上线,从操作体系安装,到运行环境依靠,再到应用配置,需要斲丧大量技能资源在很多噜苏无意义的运维工作上。
        随着假造机和云计算的普及,很多公司开始租用 AWS 或 OpenStack 的假造机,用脚本在这些呆板上自动化摆设,但这个过程中会碰到云端假造机和本地环境不同等的问题,解决起来仍旧费时费力。
        为相识决这些问题,PaaS 平台服务(Platform-as-a-service)诞生了。PaaS 有应用托管的能力,提供与开发环境雷同的运行环境。PaaS 会为每一个应用单独创建一个隔离环境,然后再隔离环境中启动这些应用历程,从而达到多个用户的应用互不干涉地再假造机里批量、自动运行起来地目标。
        而 Docker 就属于新一代地 PaaS 项目,它脱胎于 Linux Container (LXC)技能,与先前的 PaaS 不同的是, Docker 把 Cgroups 、 Namespace 和 UnionFS 等一系列技能整合起来,极大地降低了容器技能的复杂度,提升了开发者的用户体验。 Docker 公司界说了以容器镜像为尺度的应用打包格式,而且建立 Docker Hub 服务举行镜像分发和协作。这些办法迅速创建了一个精良的社区和合作同伴生态圈,此中包括 AWS 、Google 、Microsoft 、IBM 等行业巨头和国内的浩繁公司。
【说白了,PaaS 平台服务的诞生就是为相识决云端假造机和本地环境不同等、应用之间需要隔离的问题,而Docker则是在原先PaaS 平台服务的基础上举行了进一步的提升,界说了以容器镜像为尺度的应用打包格式。其重要目标还是为了提升生产效率和降低成本,并提升开发者的用户体验】 


  • Docker的历史
        2010年,几个做IT的年轻人,在美国旧金山成立了一家名叫“dotCloud”的公司。这家公司重要提供基于PaaS的云计算技能服务。详细来说,是和LXC有关的容器技能。后来,dotCloud公司将自己的容器技能举行了简化和尺度化,并命名为 “Docker”。
        Docker 技能诞生之后,并没有引起行业的关注。而 dotCloud公司 作为一家小型创业企业,在猛烈的竞争之下,也步履维艰。就在他们快要坚持不下去的时候,“开源”的想法脱颖而出。
        2013年,dotCloud公司 的首创人之一,Docker之父——Solomon Hykes 正式决定,将Docker项目开源。
        正是这一战略的实行,越来越多的IT工程师发现了 Docker 的长处,然后蜂拥而至,参加到 Docker 开源社区。Docker 的人气迅速攀升,速率之快,令人膛目结舌。
        开源当月,Docker 0.1 版本发布。此后的每一个月, Docker 都会发布一个版本,到2014年6月9日,Docker 1.0版本正式发布。此时的Docker 已经成为行业里人气最火爆的开源技能,没有之一。
        Docker 火了之后,dotCloud 公司就干脆把公司名字也改成了 Docker Inc 。


  • Docker是什么
        Docker 是一个开源的应用容器引擎,开发者可以打包他们的应用以及依靠包到一个可移植的镜像中,然后发布到任何流行的 Linux 或 Windows 呆板上。
        Docker 的 Logo如下所示

Docker 的 Logo 生动描述了 Docker 这个产品的本质:软件行业的集装箱。
        【集装箱是指具有一定强度、刚度和规格专供周转使用的大型装货容器。对于绝大多数的货物,我们不需要专门定制化运输船。在一艘大型货船上,各种各样的货物被集装箱尺度化,可以把货物规整地摆放运输,各个集装箱之间互相隔离,不会影响】
我们将 Docker 与集装箱做个类比,方便我们更好地理解 Docker :
                
传统行业集装箱Docker
货物的实体软件应用和自身运行依靠的环境
具有统一的规格,便于运输运行环境的统一性
与外界环境隔离容器之间互不影响




  • Docker可以干什么

  • 将一整套环境打包封装成镜像,无需重复配置环境,解决环境带来的种种问题
  • Docker容器间是历程隔离的,谁也不会影响谁


  • 为什么需要 Docker
对企业来说:
        Docker 是天下领先的软件容器平台
        开发人员利用 Docker 可以消除协作编码时“在我的呆板上可正常工作”的问题
        运维人员利用 Docker 可以在隔离容器中并运行和管理应用,获得更好的计算密度
        企业利用 Docker 可以构建敏捷的软件交付管道,以更快的速率、更高的安全性和可靠的信誉为 Linux 和 Windows Server 应用发布新功能
对个人来说:
        把握使用 Docker 使用可以提升自身竞争力,
        Docker 在日常使用中也可以提供不少便利
认识Docker的常用命令

docker search 镜像名    (搜索仓库镜像)
docker pull 镜像名    (拉取镜像)
docker ps     (查看目前正在运行的所有容器)
docker ps -a  (查看所有容器,包括已经停止的容器)
docker commit 容器名  自界说镜像名  (将容器打包成镜像)
docker images (查看docker镜像)
docker rmi image_id/image_name    (删除镜像)
docker build    (使用Dockerfile创建镜像)
docker run    (运行容器) (例如:docker run -d -p 宿主机端口:容器端口 --name 自界说容器名 镜像)
【注:
        run(创建并启动一个容器)=build&start
        -d 后台存放
        -p 端口映射
        -it 分配交互式的终端(安装容器要给)
        --name 自界说一个名字】
docker exec -it ... /bin/bash   (进入容器中执行命令) (例如:docker exec -it  container_id/container_name /bin/bash)
docker logs  container_id/container_name   (查看容器日志)(例如:docker logs -f -t --tail 10 container_id )
docker start  container_id/container_name    (启动容器)
docker restart  container_id/container_name    (重启容器)
docker stop container_id/container_name    (停止容器)
docker rm -f container_id/container_name    (删除容器)(只能删除已停止的容器)
docker rm -f `docker ps -a` (删除所有的容器)
制作Kodexplorer网盘docker镜像

【本章内容较多,所以分两篇发送。第一篇重要是理论部门,即Docker的简单介绍和Docker的一些常用命令,第二篇则是实践部门,即Kodexplorer网盘docker镜像的制作步调。】

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

笑看天下无敌手

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表