【Deis文档】Deis的组件

DockOne 发表了文章 • 0 个评论 • 4300 次浏览 • 2014-11-20 20:24 • 来自相关话题

注:本文翻译自Deis官方文档,无任何商业目的,转载请注明出处。 Deis包含很多的组件,这些组件一起组成一个分布式的PaaS。每一个Deis的组件都可以以一个容器或者一组容器的方式部署。 几个组件。 控制器组 ...查看全部
注:本文翻译自Deis官方文档,无任何商业目的,转载请注明出处。

Deis包含很多的组件,这些组件一起组成一个分布式的PaaS。每一个Deis的组件都可以以一个容器或者一组容器的方式部署。
几个组件。
控制器组件(Controller)
---------
控制器组件是一个HTTP API服务器。Deis命令行客户端可以与此组件交互。
数据库组件(Database)
--------
数据库组件是一个PostgreSQL服务器,用来持久化平台状态。备份和WAL日志会被推送到Store组件
缓存组件(Cache)
-------
缓存组件是一个Redis实例,在controller和registry中会被使用到。
Builder
---------
Builder使用Git服务器来处理应用的构建。构建步骤为:
    []接受来自于SSH的`git push`请求[/][]通过SSH的密钥验证用户[/][]授权用户Git仓库的写权限[/][]根据更新的Git仓库构建一个新的Docker镜像[/][]将最新的配置添加到最终的Docker镜像[/][]将镜像推送到平台的注册中心[/][]在控制器上创建一个新的发行版本[/]
一旦新的发行版本生成,新的容器会在平台上自动的进行部署。
Registry
-----
Registry保存Docker镜像。镜像的数据保存在Store中。
Logspout
--------
Logspount组件是一个自定义化的progrium's logspount,它可以运行在CoreOS集群的主机中,并从运行的容器中收集日志,最后再将日志发送到日志组件
Logger
-----
Logger组件其实是一个syslog服务器,它可以用来收集来自Logspout的日志。这些数据可以通过控制组件查询。
发布器(Publisher)
-----
发布器组件是一个使用Go语言编写的微服务,可以将容器发布到etcd,并暴露给平台的路由器(Router)。
路由器(Router)
-----
路由组件使用Nginx将流量路由到应用容器。
Store(存储)
--------
存储组件使用Ceph来保存需要存储状态的Deis组件,包括RegistryDatabaseLogger

【Deis文档】Deis的架构

DockOne 发表了文章 • 0 个评论 • 5267 次浏览 • 2014-11-20 20:22 • 来自相关话题

注:本文翻译自Deis官方文档,无任何商业目的,转载请注明出处。 Deis使用面向服务的架构,架构中的组件包括控制层(Control Plane)、数据层(Data Plane)和网状路由(Router Mesh)。 架构 ...查看全部
注:本文翻译自Deis官方文档,无任何商业目的,转载请注明出处。

Deis使用面向服务的架构,架构中的组件包括控制层(Control Plane)、数据层(Data Plane)和网状路由(Router Mesh)。
架构图
-------

管理员使用Deisctl API与集群的控制层、数据层和网状路由进行交互。
而平台的用户(开发者)通过Deis API与控制层进行交互。
控制层通过调度器将任务发送到数据层。网状路由用来路由请求到控制层和数据层。因为网状路由与外网连接,所以它的前端一般是负载均衡器。
控制层
-------

控制层负责整个平台的管理功能。控制层的组件(蓝色的部分)全部由Docker容器实现。
存储(Store)组件包含一些更小的组件。这些小的组件运行着容器化Ceph集群,Ceph集群可以为控制层的组件提供用于存储blob的API和POSIX文件系统API。具体组件如下:
    []Registry - 一个Docker Registry,用来保存镜像和配置数据[/][]Database - 用来保存平台的状态的Postgres数据库[/][]日志- 一个syslog日志服务器,它会收集数据层的日志[/]
终端用户主要通过控制器组件(Controller)暴露的HTTP API来与控制器组件交互。用户也可以通过`git push`与Builder进行交互。数据层-------数据层是用户容器(蓝色的部分)以用户身份运行的地方。平台调度器负责将容器发布到数据层的主机上。Deis也要求一些轻量级的组件运行在这些主机上:拓扑结构
---
对于小规模的部署你可以在三个服务器上运行整个平台,包括控制层、数据层和网状路由。
对于大规模的部署,你可以将控制层和网状路由分割开来,然后将数据层扩展到任意多的服务器。

【Deis文档】Deis的基本概念

DockOne 发表了文章 • 0 个评论 • 5919 次浏览 • 2014-11-20 20:17 • 来自相关话题

注:本文翻译自Deis官方文档,无任何商业目的,转载请注明出处。 Deis是一个轻量级的应用程序平台,用来在CoreOS集群中以Docker容器的方式部署并扩展十二要素应用程序(中文资料)。 十二要素(Twelve-Fac ...查看全部
注:本文翻译自Deis官方文档,无任何商业目的,转载请注明出处。

Deis是一个轻量级的应用程序平台,用来在CoreOS集群中以Docker容器的方式部署并扩展十二要素应用程序中文资料)。
十二要素(Twelve-Factor)
----------------------
十二要素应用程序是一套方法论,用来指导如何构建现代的、可扩展的分布式应用程序。
我们觉得它集合了很多的关于软件即服务(software-as-a-service)的经验和智慧,特别是在Heroku的平台上。
Deis遵循十二要素应用程序的方法论和最佳实践来设计运行应用程序。
Docker
------
Docker是一个开源项目,通过一个轻量级、可移植、可独立运行的容器来打包、交付并运行应用程序。
Deis能把你的应用组装(curates)成Docker的镜像,然后通过Docker容器的方式在集群上发布。
(Deis自身也是一系列的互相写协作的Docker容器。)
CoreOS
------
CoreOS是一个新的、精简的Linux发行版,其架构专为运行现代的、容器式程序栈而设计。
Deis运行在CoreOS上,并部署到任何地方 - 公有云、私有云、裸机(bare metal),甚至是你的工作站。
CoreOS能让Deis高弹性(high resilience)、规模化的部署应用或者服务,并且操作简单。
应用
---
Deis是围绕着应用的概念而设计的。应用存在集群上,并且使用容器来处理请求。
开发者使用应用来推送代码、更改配置、增加进程数、查看日志、运行管理命令和其他很多事情。
构建、发布、运行(Build, Release, Run)
-----------------------------------

# 构建阶段
Builder组件处理git push请求并且在临时的Docker容器内构建应用并生成一个新的Docker镜像(image)。
# 发布阶段
在发布阶段,一个Build和配置结合起来创建出一个新的数字型的发行版本(release)。紧接着这个发行版本会被推送到Docker registry以便稍后执行。当一个新的build被创建或者配置发生改变时,都会触发构建新的发行版本,这样回滚代码或配置更改都会变的很容易。
# 运行阶段
在运行阶段,容器会被分派到调度器(scheduler)并且更新相应的路由。调度器负责将容器发布到主机上,并且在保证它们在集群上的均衡。容器一旦处于健康状态koi会被推送到路由组件。旧的容器只有在新的容器上线并且开始处理请求后才会被收起来会以保证零停机部署。
备份服务
-------
Deis把数据库、缓存、存储、消息系统以及其它后端服务当作附加资源,以符合十二要素应用程序的最佳实践。
应用通过使用环境变量附加后端服务。因为应用与后端服务之间没有耦合,所以应用可以任意独立的进行扩展,与由其它应用提供的服务通信,或者切换为外部服务以及第三方提供的服务。

十大正在快速演进的Docker项目

DockOne 发表了文章 • 5 个评论 • 4755 次浏览 • 2014-11-18 17:45 • 来自相关话题

Docker无疑是今年以来最火的开源技术,Docker现在已经成为目前IT界创业者和创新者的宠儿。无论谷歌、微软、亚马逊、IBM等科技厂商都积极支持Docker技术,Docker虽然入门和使用起来非常简单,但整个生态系统还是挺庞大的,而且其底层技术也都很复杂, ...查看全部
Docker无疑是今年以来最火的开源技术,Docker现在已经成为目前IT界创业者和创新者的宠儿。无论谷歌、微软、亚马逊、IBM等科技厂商都积极支持Docker技术,Docker虽然入门和使用起来非常简单,但整个生态系统还是挺庞大的,而且其底层技术也都很复杂,目前基于Docker技术的项目如雨后春笋般出现,今天,笔者总结了目前正在快速演进的Docker相关技术,分享给大家。
Kubernetes
在今年夏天Dockercon 上Google基础设施副总裁Eric Brewer宣布Kubernetes,建于Docker之上的Kubernetes可以构建一个容器的调度服务,其目的是让用户透过Kubernetes集群来进行云端容器集群的管理,而无需用户进行复杂的设置工作。系统会自动选取合适的工作节点来执行具体的容器集群调度处理工作。其核心概念是Container Pod(容器仓)。
Docker Pods
跟Kubernetes密切相关,Eric Brewer也谈到了容器并且引入了“ pods ”的概念。这是一个在Kubernetes里面非常关键的概念。他说:“在谷歌,我们很少部署一个容器,相反,他们是将容器组合在一起。”
他指出Docker容器需要一个内部和外部端口的常量映射,这是一个需要管理、存储和查询的复杂附加层——甚至在作为单一机组部署的pod容器之间。因此,在Google,他们确保每个容器的pod都有自己的IP地址。这意味着使用的端口无论是内部和外部都是一样的。这样做去掉了管理端口的复杂附加层。现在,找到pods运行一个特定的服务,你只需要这些pods的IP地址列表。谷歌计算引擎是目前唯一的云基础设施服务,帮助分配一个IP子网给虚拟机——因此在这里面每个Docker pod只有一个IP。
Weave
Weave是由Zett.io公司开发的,它能够创建一个虚拟网络来连接部署在多台主机上的Docker容器。通过Weave所有的容器就像被接入了同一个网络交换机,那些使用网络的应用程序不必去配置端口映射和链接等信息。外部设备能够访问Weave网络上的应用程序容器所提供的服务,同时已有的内部系统也能够暴露到应用程序容器上。Weave能够穿透防火墙并运行在部分连接的网络上。另外,Weave的通信支持加密,所以用户可以从一个不受信任的网络连接到主机。
CoreOS
CoreOS是一种新的、架构体系重新设计的Linux发行版,可以运行在既有的硬件或者云上。CoreOS使用systemd和fleet来对容器进行管理,通过 etcd进行服务发现和配置信息共享。CoreOS目前风头正劲,目前已经获得融资并宣布收购私有Docker仓库服务商Quay.io,进军企业 级的Registry。另外,CoreOS的etcd等组件也获得了社区的认可,并得到了大规模使用。CoreOS已经发布首个稳定版本,目前主流的云服 务商都提供了对CoreOS的支持。
Flannel
它是由CoreOS团队针对Kubernetes设计的一个覆盖网络工具,其目的在于帮助每一个使用 Kuberentes 的 CoreOS 主机拥有一个完整的子网。Flannel之前的名字是 Rudder,Kubernetes 会为每一个 POD 分配一个独立的 IP 地址,这样便于同一个 POD 中的Containers 彼此连接,而之前的 CoreOS 并不具备这种能力。为了解决这一问题,Flannel 通过在集群中创建一个覆盖网络为主机设定一个子网。
Docker For Windows
最近,微软加入了Docker的潮流,说他们打算为Windows建立一个集装箱化解决方案并在之上提供一个与Docker兼容的API。虽然,Docker图像在Linux和Windows容器之间永远不可能便携,但它的确意味着已经有一些可用的工具构建在Docker API层上。
Atomic
Project Atomic是最近才发布的一个项目,它也是一个瘦身版的Linux,只包含systemd/geard /rpm-OSTree以及Docker组件,专门用来部署和管理Docker容器。它能在接近硬件裸机级别上高性能的运行大量容器,而且它还是基于SELinux的,在安全上也有保障。
Cloud Foundry Diego
ActiveState的重点是开源PaaS项目。我们认为由Diego项目引起的Docker集成正促使生态系统往正确方向上前进。像Kubernetes一样,Diego是一个调度程序,同时,它主要与Cloud Foundry配合运行。我们也看到Windows .NET从Uhuru那里集成Diego,对Windows来说Docker已成为现实,我相信我们将看到这些技术融合。
Flynn
Flynn是一个使用Go语言编写的开源PaaS平台,Flynn使用模块化的设计,任何一个模块都可以独立的进行修改、升级和替换。Flynn的目标是简化分布式环境中应用的部署和维护,通过使用 git push命令,Flynn就可以将应用部署到Docker,从而省去了复杂的配置和操作。Flynn目前仍在开发中,尚未发布稳定版,但已经获得了很多公司的资助,它被称为是下一代的开源PaaS平台。
Fig
Fig是一个基于Docker的用于快速搭建开发环境的工具,目前Fig团队已经加入Docker公司。Fig通过一个配置文件来管理多个Docker容 器,非常适合组合使用多个容器进行开发的场景。Fig可以和Docker一起来构建基于Docker的复杂应用,CoreOS的功能强大但是配置比较复 杂,而Fig相对而言比较简单,但是很难在多台服务器上做扩展,从Docker官方收购Fig也可以看到该项目的重要性。

CoreOS是什么样的一个操作系统?

回复

DockOne 发起了问题 • 4 人关注 • 0 个回复 • 6251 次浏览 • 2014-11-18 17:40 • 来自相关话题

Container技术和服务器虚拟化是一样的技术吗?

DockOne 回复了问题 • 7 人关注 • 2 个回复 • 8196 次浏览 • 2014-11-17 17:31 • 来自相关话题

如何安装 Fig

DockOne 回复了问题 • 3 人关注 • 1 个回复 • 4900 次浏览 • 2014-11-16 19:55 • 来自相关话题

企业如何实际使用 Docker

DaoCloud 发表了文章 • 0 个评论 • 3273 次浏览 • 2015-08-18 12:06 • 来自相关话题

DaoCloud 正在启动 Docker 技术系列文章,每周都会为大家推送一期真材实料的精选 Docker 文章。本周推出的文章原文名为《 How companies will actually use Docker 》。作者:Stephanie Tayeng ...查看全部

DaoCloud 正在启动 Docker 技术系列文章,每周都会为大家推送一期真材实料的精选 Docker 文章。本周推出的文章原文名为《 How companies will actually use Docker 》。作者:Stephanie Tayengco,由 Fiona 翻译。



#作者简介:

Stephanie Tayengco Logicworks 高级副总裁,负责网络运营中心( Network Operations Center ,简称 NOC )业务。在 2000 年加入 Logicworks 之前,她参与了哥伦比亚大学媒体中心的创立。 Stephanie 毕业于宾夕法尼亚大学,并持有哥伦比亚文科硕士学位。

Logicworks 是一家云计算战略与管理咨询公司。创立于 1983 年,总部位于纽约,提供世界级的复杂 IT 解决方案,他们的客户包括美国最大的卫生保健、法律和公共部门。



#观点摘录:

Docker 虽然宣称自己在向生产环境进军(可结合 DockerCon 第二天的主题博客文章 http://blog.daocloud.io/dockercon-day-2-production-readiness/ ),但距离最终落实还有一段距离。老牌云计算战略与管理咨询公司 Logicworks 的高级副总裁 Stephanie 给出了自己的观点。她认为,要推动 Docker 进入生产环节,企业不仅要有能力掌控混合云,还要推动开发运维一体化文化的发展;同时 Docker 也需要打磨自己,在安全和监控方面得到提升。

---
#原文:

企业需要 Docker !尽管非常年轻, Docker 已被列在诸多路线图上,成为初创企业和金融服务大鳄们的心头好。

通常认为企业没有必要使用 Docker 而把自己转变为开发运维的乐土;他们不需要微服务架构,也无需敏捷的全栈工程师。事实上, Docker 非常适合这些企业的传统 IT 转型,能够帮助大型团队实施开发运维一体化的最佳实践。

混合云是近半数企业的目标,大多数企业已经开始使用开发运维一体化的工具链。不过这些过程都比较混乱。企业们纷纷雇用云计算顾问、增强数据中心、打破工程师团队之间的隔阂,以及将应用迁移到 AWS 或别的公有云上。


掌控混合云( Mastering the hybrid cloud )



尽管混合云具有灵活性等优点,跨多个复杂系统进行安全和扩展性管理仍是一项工程学壮举。大部分的企业应用饱受内部依赖、网络复杂性、庞大的定制化数据库集群等的困扰。把应用“平滑”迁移到另一个云,这个想法本身就很可笑。对大多数企业来说,云服务简直就是白日梦。

Docker 正是为了弥合这一鸿沟。企业使用 Docker 的首要原因就是帮助他们跨系统部署、迁移应用、以及消除人工重复配置的工作。由于应用的依赖内建于容器, Docker 容器能够大幅减少对互用性的焦虑。 Docker 在裸机服务器、虚拟机、 AWS 实例上都能运行良好。

结果就是,在公有云测试环境里运行良好的应用,在定制化私有云的生产环境里也运行良好。在裸机服务器上运行的应用也可以在任何公有云平台的生产环境中运行。

推动开发运维一体化文化( Accelerating a DevOps culture )




对于企业来说,推动开发运维一体化文化向前发展,是好事一桩。开发运维一体化运动的意义在于行动更快、资源消耗更低。为开发者配备 Docker 容器运行测试、分钟级部署到生产,不仅非常划算,同时也消灭了开发者最大的敌人——手动进行系统配置。

Docker 也非常适合不希望被厂商绑定的成长型企业。容器标准化使得这些企业能够轻松地实现在不同厂商的云品台之间迁移。

Docker 团队也在努力推进软件达到企业生产的标准。继六个月前收购了 , Docker 发布了网络功能方面的重大升级,允许容器跨主机通信。他们将完成一套完整的网络 API ,使 Docker 网络功能达到企业级,确保应用在整个生命周期的便携性。


不断打磨,强化安全功能( Testing as security features mature )



然而仍有不少困难需要克服。企业无疑会关注 Docker 在混合云环境下的安全问题。容器可能与虚拟化技术相似,但是在系统隔离、日志集成、及监控等方面,二者却相去甚远。企业应用拥有严格的管理程序,需要大规模日志和监控。但是,目前并没有成熟的管理编配工具进行跨 Docker 集群的安全监控。大多数市面上的监控工具无法看到公有云上的转瞬即逝的实例,只能监控单个虚拟子机

为了预防安全威胁,目前 Docker 容器需要大量的人工打安全补丁。 Docker 允许更新基础镜像,然而开发者需要手动检查,以确保基础镜像在每个容器里都能运行。 Docker 要想成为承担关键任务的企业软件,某种形式的镜像继承非常必要。

对于需要多端网络隔离不同客户的环境的企业来说, Docker 真的不是个好选择。在相同的 内核空间里运行相同的内核,与在 hypervisor 下隔离不同虚拟机,不可相提并论。已经拥有成熟备份工具的企业可能会觉得 Docker 容器为将数据准时、正确地交付带来新一轮挑战。

对于企业面临的混合云的挑战而言, Docker 不失为一个答案。它同时也是一个缺乏编配或安全监控工具的全新技术,企业需要这些工具从而将 Docker 应用于生产。现在正是企业考察 Docker 的时机。他们可以将自己的应用运行在混合云的测试环境中,了解自己的痛点。但是将 Docker 集群应用于生产,或许还未当时。

如何使用Docker开源仓库建立代理缓存仓库

cSphere 发表了文章 • 0 个评论 • 4085 次浏览 • 2015-10-28 11:06 • 来自相关话题

开源Docker仓库v2的其中一个最新特性:能够被用作代理缓存仓库,以缓存Docker Hub上的镜像。运行一个缓存仓库允许你在本地储存镜像,减少过多的通过互联网从Docker Hub拉取镜像,这个特性对于一些在他们环境中拥有数量庞大的Docker引擎的用户来 ...查看全部
开源Docker仓库v2的其中一个最新特性:能够被用作代理缓存仓库,以缓存Docker Hub上的镜像。运行一个缓存仓库允许你在本地储存镜像,减少过多的通过互联网从Docker Hub拉取镜像,这个特性对于一些在他们环境中拥有数量庞大的Docker引擎的用户来说很有用。跟着本篇教程,你可以让Docker引擎从本地代理缓存仓库拉取镜像,而不是让每个引擎总是从Docker Hub拉取,从而节省时间和带宽。
## 你可以这样开始:
##要求:

  • Docker引擎1.8.3
  • Docker仓库v2
  • 足够储存Docker镜像的磁盘空间
  • TLS证书和密钥
##持久化数据在这个例子中,我们会假设你会储存所有持久化数据在本地文件系统的/data路径下,这个路径下包含TLS证书和密钥文件,配置文件和镜像缓存文件。我们之后会用卷挂载这个目录进运行仓库的容器。##保护你的代理缓存仓库安全代理缓存仓库需要一个TLS证书来保证Docker引擎和缓存仓库之间的连接安全,在这个例子中,我们会放置我们证书文件(domain.crt)和密钥文件(domain.key)在主机的/data目录。更多关于使用TLS加强仓库安全的信息,请参照Docker仓库2.0文档。##创建代理缓存仓库配置文件下一步你需要创建一个配置文件,来把这个仓库用作代理缓存。你可以用cat命令把registry:2镜像中的缺省配置文件重定向输出到一个文件中:
sh$ docker run -it --rm --entrypoint cat registry:2 \/etc/docker/registry/config.yml > /data/config.yml
我强烈建议从Docker镜像中获得这个默认配置,而不是使用例子中的配置,因为将来这个默认配置可能会有更新。##默认的config.yml例子:
yamlversion: 0.1log:   fields      service: registrystorage:      cache:         layerinfo: inmemory      filesystem:         rootdirectory: /var/lib/registryhttp:   addr: :5000
##修改'http'这节配置上TLS:
yamlhttp:      addr: :5000      tls:            certificate: /var/lib/registry/domain.crt            key: /var/lib/registry/domain.key
##在配置文件中新加一节'proxy'来开启缓存:点击打开文档 (https://github.com/docker/distribution/blob/master/docs/mirror.md)
yamlproxy:      remoteurl: https://registry-1.docker.io      username: [username]      password: [password]
'username'和'password'这两个选项是可选的,这是Docker Hub账号的用户名和密码,设置上这两个选项,会使代理缓存仓库获取到这个账号的同等权限,也就是说,这个用户有权限获取的镜像,这个缓存仓库同样有权限获取。请确保完全理解设置这个Docker Hub账号背后意味着什么,并且确保你镜像的安全还有严格的访问权限!如果你不确定,请不要再配置包含用户名和密码,那么你的代理缓存仓库就只会缓存公共镜像。##启动代理缓存仓库的容器:
sh$ docker run -d --restart=always -p 5000:5000 --name v2-mirror \-v /data:/var/lib/registry registry:2 /var/lib/registry/config.yml
以上命令使用一个卷把宿主机上的/data挂载进了容器中,使容器能使用持久储存镜像缓存,TLS证书和密钥,还有自定义的仓库配置文件。##验证你的代理缓存仓库已经启动并正常运行:
sh$ curl -I https://mycache.example.com:5000/v2/HTTP/1.1 200 OKContent-Length: 2Content-Type: application/json; charset=utf-8Docker-Distribution-Api-Version: registry/2.0Date: Thu, 17 Sep 2015 21:42:02 GMT
##配置你的Docker引擎使用代理缓存仓库修改Docker守护进程的启动参数,加上--registry-mirror选项:
sh--registry-mirror=https://:
例如,如果你的缓存仓库的主机名为mycache.example.com并且仓库服务端口为5000,你需要加上以下选项到守护进程的参数:
sh--registry-mirror=https://mycache.example.com:5000
参考在各种的Linux分发版中配置运行Docker了解更多信息关于如何添加Docker守护进程参数。##测试你的代理缓存仓库从Docker Hub上拉取一个你本地没有的镜像。例如,busybox:latest镜像:
sh$ docker pull busybox:latest
检查缓存仓库中的目录,验证busybox镜像是否被缓存:
sh$ curl https://mycache.example.com:5000/v2/_catalog{"repositories":["library/busybox"]}  
你也可以验证latest标签是否被缓存:
sh$ curl https://mycache.example.com:5000/v2/library/busybox/tags/list{"name":"library/busybox","tags":["latest"]}  
现在开始当你拉取镜像时,镜像将被缓存到你的代理缓存仓库,之后拉取相同的镜像时会更快,并且这些镜像缓存会维护自身,当他们不再被使用时将会自动清除。从这里下载Docker引擎,并尝试创建用开源的Docker仓库创建代理缓存仓库吧!##总结Docker技术越来越渗透到生活的各个角落,它让我们的生活更加方便快捷。在科研的大道上,希云(https://csphere.cn)希望能够和大家一起共同探索和进步!# Docker技术如何落地企业带来价值希云是Docker领域的专家,致力于通过Docker技术提供更好的云计算产品和服务。希云品牌下的产品包括了
  • COS容器操作系统
  • cSphere容器管理平台
  • CDT基于容器的开发测试平台
  • CShow基于容器的项目演示平台
  • CHub企业版Registry
并提供相关的培训和咨询服务
  • 微镜像服务
  • Docker企业培训
  • 应用Docker化咨询
  • 软件SaaS化咨询
  • PaaS化咨询
欢迎企业垂询:
  • 电话:400-686-1560
  • 邮箱:contactus@csphere.cn

# 微信关注cSphere-CN

回复数字“1”即可查看【Docker持续部署图文详解】
回复数字“2”即可查看【初识Docker和Windows Server容器】
回复数字“3”即可查看【为Windows创建Node.js容器镜像】
回复数字“4”即可查看【使用Docker-in-Docker来运行CI或集成测试环境?三思】
789437542565210719.jpg

# 转载声明
尊重知识,请必须全文转载,不得删改,包括本行。

DaoCloud Toolbox 正式发布,全面提升国内用户 Docker 使用体验

DaoCloud 发表了文章 • 0 个评论 • 3874 次浏览 • 2015-08-21 18:21 • 来自相关话题

DaoCloud Toolbox 是什么? DaoCloud Toolbox 由一系列 Linux 下的命令行工具和后台服务组成,是一款集成了 Docker Hub 下载加速、 Docker 宿主垃圾回收、 ...查看全部
DaoCloud Toolbox 是什么?



DaoCloud Toolbox 由一系列 Linux 下的命令行工具和后台服务组成,是一款集成了 Docker Hub 下载加速、 Docker 宿主垃圾回收、混合式容器管理等多种功能于一身的工具软件。



工具一: Docker 加速器升级版



DaoCloud 在 2015 年年初推出的 提供 Docker Hub 镜像下载的加速功能,极大提升了国内网络访问 Docker Hub 的速度,拥有广泛的用户群体。然后,由于受到 Docker Registry 原理所限,使用加速器,仍无法避免直接连接 Docker Hub Index 元数据服务器时链接缓慢甚至中断的问题(如下图的故障)。



DaoCloud 工具箱包含了 Docker 加速器的升级版「 Docker 超速器」,使用 dao pull 命令行工具下载 Docker Hub 镜像,可以获得类似迅雷、 BT 一般的超高速下载体验。 dao pull 可以完全替代 docker pull ,并且具备以下的特点:

  • 充分利用了我们最新投入生产的分布式 Docker 镜像分发网络,具有云端智能路由与缓存功能。
  • 采用 Docker 1.8 最新技术,实现多路并行下载,并在协议层优化,提升并发传输速度。
  • 无缝兼容各类私有 Docker 镜像仓库的下载操作。
下图是 dao pull 运行的截屏,是否有了用迅雷下载电影一般的感觉?工具二: Docker 清道夫随着 Docker 的使用和容器被创建、销毁, Docker 宿主机上往往会产生各类「垃圾」。 DaoCloud Toolbox 提供了 Docker 清道夫工具,可以有效的识别各类破损镜像、无主 Volume 等 Docker 运行过程中的垃圾,并且完成安全的清除工作。
  • 运行 sudo dao clean ,即可完成宿主机上的垃圾清理工作。
  • 为了避免误删除, dao clean 命令还支持「试运行」功能,使用 – d 参数,可以列出所有已经被识别的垃圾,由用户决定是否需要清理。
工具三: DaoCloud 自有主机管理接入自有主机到 DaoCloud 平台是一项我们推出已久的功能,这次发布 DaoCloud Toolbox ,我们决定把自有主机的宿主机监控 Agent ,集成进入 DaoCloud Toolbox 。自有主机管理服务是 DaoCloud 的一项独创技术,使用这项功能, DaoCloud 用户可以通过一致的界面和流程,管理在公有云、私有云甚至是企业防火墙之后的各类物理和虚拟主机资源,把这些资源汇聚成跨云跨网的分布式容器主机资源池,实现容器化应用的高速部署和灵活调度。提问与回答#1. DaoCloud Toolbox 如何试用?
  • 请登录 DaoCloud 控制台, b 依次点击「我的主机」、「添加新主机」。
  • 点击「免费胶囊主机」,参与体验
  • 请根据屏幕提示,执行我们提供的安装命令
备注:免费胶囊主机,是客户无需预付款,即可获得的容器主机,每天我们会通过合理计算调度,从数据中心节点中腾挪出闲散的计算资源组成「胶囊集群」。 每台「胶囊主机」自带 Docker 运行环境,并自动接入 DaoCloud 容器管理平台。每颗「胶囊」的生命目前是 120 分钟,到期后会自动消失。装载到「胶囊」里的应用信息会保留并自动迁移。「胶囊主机」到期后可以重复创建。#2. DaoCloud Toolbox 如何安装?
  • 请登录 DaoCloud 控制台,依次点击「我的主机」、「添加新主机」。
  • 请根据屏幕提示,在需要安装 DaoCloud Toolbox 的主机终端,执行我们提供的安装命令。
  • 安装完成后,可以主机终端执行 sudo dao – version ,验证安装成功与否。
  • 您也会在 DaoCloud 控制台的「我的主机」的界面,看到刚才完成安装的主机信息。您可以在 - ---DaoCloud 控制台,管理这台主机,具体方法,可以参考我们的。
#3. 使用 DaoCloud Toolbox ,对 Docker 客户端有什么要求?
  • DaoCloud Toolbox 中的 dao 命令,会调用本机 Docker 客户端的 API ,来完成各类操作。
  • DaoCloud Toolbox 支持包括最新 Docker 1.8 在内的各个版本 Docker 客户端。
#4. 是否支持 Boot2Docker 、 Kitematic ?
  • 支持。安装时,请确保 Boot2Docker 、 Kitematic 已经正确配置, Docker 客户端已经安装并且运行正常。
#5. 之前推出的 Docker Hub 加速器是否会有变化?
  • Docker 公司新近推出了 Docker 1.8 ,和 Docker Hub Registry v2 升级版本,我们的 Docker Hub 加速器已经完成了对新版本的支持工作。
  • DaoCloud Toolbox 内置了加速器升级版本,不需要 VPN 网络环境,下载速度更快。
  • DaoCloud 将继续运营旧版本 Docker Hub 加速器,但是我们推荐用户使用 DaoCloud Toolbox 中的升级版本。这两个版本的服务,我们都将保持永久免费的形态。
#6. DaoCloud 加速器是否提供离线安装版?
  • DaoCloud 加速器整合了宿主机工具包和自有主机监控管理,需要与用户的 DaoCloud ID 绑定,目前我们不提供离线单独安装的版本。
#7. DaoCloud Toolbox 今后会提供什么工具?
  • 我们将不断扩充 DaoCloud Toolbox ,并且会考虑接纳各类第三方开发的工具。如果您有好的想法,欢迎跟我们联系,请发送邮件到 info@daocloud.io 。