Dokku - 超小型 PaaS 系统


MIT
Linux
SHELL

软件简介

Dokku 是一个微型的 Heroku,由 Docker 使用不多于 100 行的
Bash 编写。一旦安装完成,你就可以通过 Git 推送兼容 Heroku 的应用到平台上运行。该系统将使用 Heroku buildpacks
构建并在一个独立容器里运行,最终结果就相当于是一个单机版的 Heroku。

Dokku 不足 100 行的代码中包括如下几个组件:

  • Docker 是一个 Linux 下的容器运行环境,这是一个高级容器,提供 Heroku Dynos 类似技术,这也是 Dokku 的核心

  • Buildstep 使用 Heroku 的开源工具 buildpacks ,其职责是构建应用所需的基础映像,借助于 Heroku 的 stack 概念

  • Gitreceive 是一个项目,为你提供一个 git 用户并可推送应用到资料库,然后触发脚本来处理该推送动作。

还有一些其他的项目用来支持 Dokku 和扩展其功能,每个项目都是独立有用的。

发布应用的过程:

$ cd node-js-sample
$ git remote add progrium git@progriumapp.com:node-js-app
$ git push progrium master
Counting objects: 296, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (254/254), done.
Writing objects: 100% (296/296), 193.59 KiB, done.
Total 296 (delta 25), reused 276 (delta 13)
remote: -----> Building node-js-app ...
remote:        Node.js app detected
remote: -----> Resolving engine versions

... blah blah blah ...

remote: -----> Application deployed:
remote:        http://node-js-app.progriumapp.com

目前提供的插件:

Datastores:

Process Managers:

Other: