我试图部署在教程中找到的Python应用程序,但它无法启动。在
这是我得到的错误:
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个正在启动
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个实例关闭
0个实例(共1个)正在运行,1个失败
失败
重新启动应用程序时出错:启动失败
这是应用程序:
import json
from os.path import join, dirname
from os import environ
from watson_developer_cloud import VisualRecognitionV3
visual_recognition = VisualRecognitionV3(VisualRecognitionV3.latest_version, api_key='myapikey')
with open(join(dirname(__file__), 'hearts.zip'), 'rb') as hearts, \
open(join(dirname(__file__), 'diamonds.zip'), 'rb') as diamonds, \
open(join(dirname(__file__), 'clubs.zip'), 'rb') as clubs, \
open(join(dirname(__file__), 'spades.zip'), 'rb') as spades :
print "Uploading files..."
print(json.dumps(visual_recognition.create_classifier('Suits', \
hearts_positive_examples=hearts, \
diamonds_positive_examples=diamonds, \
clubs_positive_examples=clubs, \
spades_positive_examples=spades), indent=2))
日志:
API/1App实例以guid 3A2D9A29A1-28d9-28d9-47af-a7b4-2e311bd763af有效载荷:{“cc[U分区”=>;“默认”,“滴滴”=>gt;“3ae2d9a1-28d9-28d9-47af-a7b4-2e3111bd763af”,“版本”=>;“948e022de-d579-4058-8e89-8573f73af7ca886”,“实例”=>;“2f4714996fe1496fe1433cea83ce95eb16a15a5c9e6”,“索引”=>;0,“原因”=>;“3aed999a9-28d9-28d9-28d9-47“崩溃”,“退出状态”=>;1,“exit_description”=>;“启动失败”,“崩溃时间戳”=>;1479457233}2016-11-18T10:20:33.805+0200
API/1App实例以guid 3A2D9A29A1-28d9-28d9-47af-a7b4-2e311bd763af有效载荷:{“cc[U分区”=>;“默认”,“滴滴”=>gt;“3ae2d9a1-28d9-28d9-47af-a7b4-2e3111bd763af”,“版本”=>;“948e022de-d579-4058-8e89-8573f73af7ca886”,“实例”=>;“2f4714996fe1496fe1433cea83ce95eb16a15a5c9e6”,“索引”=>;0,“原因”=>;“3aed999a9-28d9-28d9-28d9-47“崩溃”,“退出状态”=>;1,“exit_description”=>;“应用实例已退出”,“崩溃时间戳”=>;1479457233}2016-11-18T10:20:33.805+0200
DEA/154正在启动guid为3ae2d9a1-28d9-47af-a7b4-2e311bd763af2016-11-18T10:20:26.727+0200的应用程序实例(索引0)
4App/4App实例以guid3ae2d9a1-28d9-28d9-47af-a7b4-2e311bd763af有效载荷:{“cc[u分区”=>;“默认”,“滴滴”=>gt;“3ae2d9a1-28d9-28d9-47af-a7b4-2e3111bd763af”,“版本”“=>;“948e022de-d579-4058-8e89-8573a73af7ca886”,“实例”=>;“59b39b39b13434dc347a347aa8cca9cf93f93f28ea35”,“索引”=>;0,“原因”=>;“3gt;”gt;“3e2d9a9a9a34c“崩溃”,“退出状态”=>;1,“exit_description”=>;“应用实例已退出”,“崩溃时间戳”=>;1479457126}2016-11-18T10:18:46.849+0200
DEA/186正在启动guid为3ae2d9a1-28d9-47af-a7b4-2e311bd763af2016-11-18T10:18:41.744+0200的应用程序实例(索引0)
API/5App实例以guid 3A2D9A29A1-28d9-28d9-47af-a7b4-2E311BBD763A有效载荷:{“cc[U分区”=>;“默认”,“滴滴”=>gt;“3ae2d9a1-28d9-28d9-47af-a7b4-2e3111bd763af”,“版本”=>;“948e022de-d579-4058-8e89-8573af7ca886”,“实例”=>;“0c345d3886b924d94d949255d7a8d0482bc“索引”=“索引”=“0”=gt;0,“原因”=gt;“原因”=gt;“3”9”=“28gt;289a28d9-28d9“崩溃”,“退出状态”=>;1,“exit_description”=>;“应用实例已退出”,“崩溃时间戳”=>;1479457067}2016-11-18T10:17:47.179+0200
DEA/133正在启动guid为3ae2d9a1-28d9-47af-a7b4-2e311bd763af2016-11-18T10:17:41.725+0200的应用程序实例(索引0)
以guid3ae2d9a2d9a1-28d9-28d9-47af-a7b4-2e311bd763a有效载荷为有效载荷:{“cc[u分区”=>;“默认”,“滴滴”=>gt;“3ae2d9a1-28d9-28d9-47af-a7b4-2e31111bd763af”,“版本”=>;“948e022de-d579-4058-8e89-857373af7ca886”,“实例”=>;gt;7a8ca8caf7cab7bbb6b4d6a45cce45cce7cdcdc601ed”,“索引”=>;0,“原因”=>;“撞毁”,“撞毁”,“撞毁”,“撞毁”,“退出状态“=>;1,“exit_description”=>;“应用实例已退出”,“崩溃时间戳”=>;1479457006}2016-11-18T10:16:46.720+0200
DEA/201GUID为3ae2d9a1-28d9-47af-a7b4-2e311bd763af2016-11-18T10:16:41.710+0200启动应用程序实例(索引0)
API/3App实例以guid3ae2d9a1-28d9-28d9-47af-a7b4-2e311bd763a有效载荷:{“cc\u分区”=>;“默认”,“滴滴”=>gt;“3ae2d9a1-28d9-28d9-47af-a7b4-2e3111bd763af”,“版本”“=>;“948ee022de-d579-4058-8e89-8573af7ca886”,“实例”=>;“af4eee6bb477454b99fdbfdbedef26268ffe9”,“索引”=>;0,“原因”=gt;“原因”=>;gt;“3e2d9a9a2d9a9-28“崩溃”,“退出状态”=>;1,“exit_description”=>;“应用实例已退出”,“崩溃时间戳”=>;1479456961}2016-11-18T10:16:01.387+0200
DEA/145正在启动guid为3ae2d9a1-28d9-47af-a7b4-2e311bd763af2016-11-18T10:15:55.778+0200的应用程序实例(索引0)
API/0更新了guid为3ae2d9a1-28d9-47af-a7b4-2e311bd763af的应用程序({“state”=>;“已启动”})
Bluemix正在对您的应用程序运行运行状况检查,该程序将侦听由
$PORT
环境变量指定的端口。因为你的应用没有监听这个端口,也因为它完成了执行并退出,Bluemix认为你的应用已经崩溃,这就是为什么它显示为无法启动。在如果您运行
cf logs <app name> recent
,将<app name>
替换为应用程序的名称,您应该会在日志中看到您的print
语句的输出。在如果要在Bluemix上运行这种类型的应用程序,可以使用
cf push <app name> no-route
来指定应用程序不会监听$PORT
环境变量中指定的端口。您还需要以某种方式修改代码,以确保在执行这些print语句之后它继续运行(例如:在末尾添加一个无限循环)。这将允许Bluemix看到您的应用程序处于运行状态,并且可以从cf logs <app name> recent
命令获得应用程序的输出。在相关问题 更多 >
编程相关推荐