PaaS系统/容器Dawn PaaS、Apache Stratos、Peas、Docker Maven Plugin介绍

以下为你介绍的PaaS系统/容器都可用在Linux系统上:Dawn PaaS(基于 Docker 的 PaaS 系统)、Apache Stratos(PaaS 框架)、Peas(PaaS 平台)、Docker Maven Plugin(可以管理Docker容器maven插件)。

1、Dawn PaaS(基于 Docker 的 PaaS 系统)

Dawn 是一个基于 Docker 的 PaaS 系统,使用 Ruby 开发。实现了类 Heroku 的接口。该项目是在 2013年10月 开始的,原本计划是作为商业服务发布,但由于 PaaS 市场的竞争越来越激烈,因此决定开源。

当前开发的版本是基于 Ubuntu 14.04,运行了 docker, ruby 2.1.2 (rails 4.1.1), postgresql, redis, logplex 和 hipache.

将来的目标是将平台移植到 CoreOS 上,并将应用放置到不同的容器上,以便更加模块化,同时更加容易发布。

特性:

通过 Git 将应用发布到平台。

使用 Buildstep 构建应用容器。

可导入环境变量到应用空间。

可通过 HTTP POST 来获取应用日志。

per-proctype 实现伸缩。

要求:

支持 AMD64 虚拟机、Vagrant >= 1.6.2、Ansible >= 1.6.2。

下载地址:https://github.com/dawn/dawn

2、Apache Stratos(PaaS 框架)

PaaS系统/容器Dawn PaaS、Apache Stratos、Peas、Docker Maven Plugin介绍

Apache Stratos 是一个支持多语言的 PaaS 框架,提供一个云端的开发、测试和运行可伸缩应用程序的环境。提供高利用率、自动化资源管理和平台的监控以及收费管理。

Apache Stratos 可运行 Tomcat、PHP 和 MySQL 应用作为服务,带来自服务管理、弹性扩展、多租户的部署、使用监控等等。

该系统在 Apache 基金会中进行孵化。

下载地址:http://stratos.incubator.apache.org/

3、Peas(PaaS 平台)

Peas = PaaS for the People.

Peas 是一个 Heroku 风格的 PaaS 平台,使用 Ruby 开发,基于 Docker 平台。其灵感来自于 Deis 和 Dokku。

Peas 的理念是可轻松访问以及易于调整,它并非想作为完整的企业解决方案,而是一个相对要简单,但基于良好基础的系统,包括:Ruby;Rspec,Bundler,Guard,Rack,Puma,Grape,Sidekiq,GLI 等等。

路线图:

提供对 AWS 和 Digital Ocean 的支持。

用户,目前 Peas 还完全没有用户的概念。

节点或者是 pods 用来保存 pea 主题,可在多个服务器上分发容器。

应用配置变量,应用日志等等。

下载地址:https://github.com/tombh/peas

4、Docker Maven Plugin(可以管理Docker容器maven插件)

docker maven plugin 是个简单的可以管理Docker容器maven插件,这个插件将会根据你的配置,在构建时启动容器,构建结束时停止容器并删除,如果本地找不到镜像,Docker会自动去中央仓库下载。

先决条件:启用TCP套接字的本地运行docker:在/usr/lib/systemd/system/docker.service中的RHEL上:

ExecStart=/usr/bin/docker -d -H tcp://127.0.0.1:4243 -H unix:///var/run/docker.sock

用法:起始目标将从图像创建容器实例并启动它,如果该图像在本地不可用,则插件将从互联网上提取该图像。

简单示例:

<plugin>

<groupId>com.ofbizian</groupId>

<artifactId>docker-maven-plugin</artifactId>

<version>1.0.0</version>

<configuration>

<images>

<image>

<name>busybox</name>

</image>

</images>

</configuration>

<executions>

<execution>

<id>start-docker</id>

<phase>pre-integration-test</phase>

<goals>

<goal>start</goal>

</goals>

</execution>

</executions>

</plugin>

所有可能配置的完整示例:

<plugin>

<groupId>com.ofbizian</groupId>

<artifactId>docker-maven-plugin</artifactId>

<version>1.0.0</version>

<configuration>

<dockerUrl>http://localhost:4243</dockerUrl>

<images>

<image>

<name>dockerfile/redis</name>

<containerConfig>

<![CDATA[

{"Hostname":"",

"PortSpecs":null,

"User":"",

"Tty":false,

"OpenStdin":false,

"StdinOnce":false,

"Memory":0,

"MemorySwap":0,

"CpuShares":0,

"AttachStdin":false,

"AttachStdout":false,

"AttachStderr":false,

"Env":null,

"Cmd":null,

"Dns":null,

"Volumes":null,

"VolumesFrom":"",

"Entrypoint":[

],

"NetworkDisabled":false,

"Privileged":false,

"WorkingDir":"",

"Domainname":"",

"ExposedPorts":null,

"OnBuild":null}

]]>

</containerConfig>

<hostConfig>

<![CDATA[

{"ContainerIDFile": null, "LxcConf": null, "Links": null, "PortBindings": {

"6379/tcp": [

{

"HostIp": "0.0.0.0",

"HostPort": "6379"

}

]

}, "Privileged": false, "PublishAllPorts": false}

]]>

</hostConfig>

</image>

<image>

<name>busybox</name>

</image>

</images>

</configuration>

<executions>

<execution>

<id>start-docker</id>

<phase>pre-integration-test</phase>

<goals>

<goal>start</goal>

</goals>

</execution>

<execution>

<id>stop-docker</id>

<phase>post-integration-test</phase>

<goals>

<goal>stop</goal>

</goals>

</execution>

</executions>

</plugin>

下载地址:https://github.com/bibryam/docker-maven-plugin

注明

以上就是PaaS系统/容器Dawn PaaS、Apache Stratos、Peas、Docker Maven Plugin的介绍内容,这些PaaS系统/容器都能使用在Linux操作系统中。

栏目相关文章