3.3 部署应用程序

使用 git push 或者是 deis 客户端 部署应用程序到 Deis。

支持的应用程序

Deis 可以部署任何能运行在 Docker 容器中应用程序或服务。为了可以水平的扩展,应用程序必须遵循 Heroku 的十二要素方法学(twelve-factor methodology)并在外部的后台服务存储状态。

例如,如果你的应用程序状态持久化在本地文件系统 — 通用的内容管理系统像 Wordpress 和 Drupal — 它不可能使用 deis 水平扩展。

幸运地是,大部分现代应用程序的特性是无状态的,可以在 Deis 中水平的扩展。

登录 Controller

在部署一个应用程序前,用户首先必须对 Deis Controller 做身份校验。

  1. $ deis login http://deis.example.com
  2. username: deis
  3. password:
  4. Logged in as deis

注意 对于 Vagrant 集群:deis login http://deis.local3.deisapp.com

选择一个构建方法

Deis 支持三种不同的方式构建应用程序:

  1. Heroku Buildpacks
  2. Dockerfiles
  3. Docker Images

Buildpacks

如果你想遵循关于 Heroku 部署程序的最佳实践或者你想从 Heroku 移植一个应用程序,Heroku buildpacks 是非常有用的。

学习在 Deis 上怎样使用 Buildpacks 部署应用程序。

Dockerfiles

Dockerfiles 是一种强大的用来定义一个基于你选择的 OS 的便携式执行环境的方式。

学习在 Deis 上怎样使用 Dockerfiles 部署应用程序。

Docker 镜像

部署一个 Docker 镜像到 Deis 上,允许你不论是从公有或是私有的 registry 获取一个 Docker 镜像并复制它。确保你在开发环境或是你的 CI pipeline 运行着相同的镜像,如同你是在生产环境一样。

学习在 Deis 上怎样使用 Docker 镜像部署应用程序