应用部署
应用部署
如果你遵守原则,你不需要做任何修改就可以在tsuru上部署。下面是应用部署在tsuru云上需要做的事情:
- 从语言层面和操作系统层面定义好的依赖
- 使用Procfile描述如何运行你的应用
接下来我们稍微深入下这些话题。
部署不同的所有地方(不同的环境,比如开发或者产品环境)都应当通过环境变量管理。tsuru很重视这个原则,所以它使用的所有服务需要的配置都是通过环境变量去设置,这样在tsuru上部署不同的环境就会很轻松。比如,如果要使用tsuru上的服务,如MySQL,当你把应用绑定到服务时,tsuru会从service API收到连接MySQL的所需要的设置,如用户名,密码,地址和数据库名。有了这些信息,tsuru会在应用所在的每个单元中对应的环境变量设置这些值。这些变量的名字由服务提供,在这个例子中,是MySQL服务。
import os
DATABASES = {
"NAME": os.environ.get("MYSQLAPI_DB_NAME"),
"USER": os.environ.get("MYSQLAPI_DB_USER"),
"HOST": os.environ.get("MYSQLAPI_HOST"),
"PORT": "",
你可能会问自己,“我怎么才能知道这些变量名字?”,不过别害怕!在tsuru上绑定应用时,它会返回运行所有服务要求tsuru在应用的单元上设置的所有变量(没有值,因为你不需要它们),如果你在命令行历史中丢失了这些环境变量,别担心!你总是可以通过<insert command here>去检查你的应用使用的服务,都生成了哪些变量。