Tsuru PaaS的前端即服务API
项目描述
部署API
首先,在tsuru中创建一个应用程序,从项目根目录执行以下命令:
% tsuru app-create varnishapi python % git remote add tsuru git@remote.sbrubles.com % git push tsuru master
推送将返回一个错误,告诉你不能在应用程序单元启动之前推送代码,等待你的单元处于服务状态,你可以使用以下命令进行检查:
% tsuru app-list
当你得到这样的输出时,你可以继续推送。
+-------------+-------------------------+--------------------------------------+ | Application | Units State Summary | Address | +-------------+-------------------------+--------------------------------------+ | your-app | 1 of 1 units in-service | your-app.sa-east-1.elb.amazonaws.com | +-------------+-------------------------+--------------------------------------+
现在,如果您访问我们的应用程序端点“/”(您可以使用tsuru app-info命令进行检查),您应该得到404错误,这是正确的,因为API不会通过此URL响应。
好吧,让我们配置应用程序,它需要与EC2 API通信,它通过使用环境变量来实现。这是你需要的东西:
% tsuru env-set EC2_ENDPOINT=https://ec2.amazonaws.com EC2_ACCESS_KEY=your-access-key EC2_SECRET_KEY=your-secret-key
为了使Varnish运行,您可以通过用户数据提供AMI或要安装的软件包列表。AMI通过环境变量AMI_ID指定,而软件包通过环境变量API_PACKAGES指定。用户可以指定这两个变量。
% tsuru env-set AMI_ID=your-ami-id API_PACKAGES=varnish vim-nox
您还可以通过USER_DATA_URL使用自定义用户数据URL,而不是使用API_PACKAGES。在这种情况下,返回的内容应包含VARNISH_SECRET_KEY单词,它将在远程机器上替换为适当的Varnish密钥。
% tsuru env-set AMI_ID=your-ami-id USER_DATA_URL=http://server/custom-user-data
用户还可以指定VPC运行的子网。您可以通过环境变量SUBNET_ID指定子网ID。
% tsuru env-set SUBNET_ID=your-subnet-id
还有一点:此API将使用MongoDB存储有关实例的信息,MongoDB端点和数据库名称也通过环境变量控制。
我们的API已经完成!让我们在Tsuru中创建服务。
创建服务
首先,您需要更改位于应用程序项目根目录中的manifest.yaml文件。将生产端点更改为指向应用程序地址,您的yaml应该看起来像这样
id: varnish password: some123 endpoint: production: varnishapi-endpoint.com
现在让我们告诉tsuru它需要注册一个新的服务,从项目根目录运行,使用crane
% crane create manifest.yaml
完成了!
项目详情
关闭
tsuru-feaas-0.10.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ec5d68e70188d580f406ab7158376a3bb38b3833a30ab725195dd1f26b158d2e |
|
MD5 | 3165932dd42f8cb6279557af43b4aeec |
|
BLAKE2b-256 | 309255b225a2032f49946406982419fd39eda4a77a6e35f04816bfa3d35f0ae0 |