everai app
应用管理
格式:
everai app [-h] {create,run,get,update,pause,resume,prepare,list,ls,queue,q,events,e,event,worker,workers,w,check,delete} ...
命令:
- create创建一个应用
- run在本地环境运行应用进行测试
- get获取一个应用的信息
- update更新应用
- pause停止应用,所有的worker都会停止
- resume恢复使用应用
- prepare准备应用,所有被- @app.prepare注解的方法都会被执行
- list (ls)显示应用列表
- queue (q)显示应用队列
- events (e, event)显示应用事件
- worker (workers, w)管理应用的worker
- check检查应用目录下的代码编译是否通过
- delete删除应用
选项:
- -h, --help显示帮助信息
everai app create
通过manifest文件或者在app.py中创建App对象来创建一个应用。
--from-file通过一个manifest文件中的设置来创建应用,否则命令行工具会根据app.py中的设置创建应用.
示例:
everai app create
格式:
everai app create [-h] [--dry-run] [-f FROM_FILE] [-n NAMESPACE]
选项:
- -h, --help显示帮助信息
- --dry-run在客户端中试运行
- -n NAMESPACE, --namespace NAMESPACE为应用指定命名空间,指定优先级:命令行 > [manifest文件 |- app.py] >- default
- -f FROM_FILE, --from-file FROM_FILE通过manifest文件(yaml格式)创建应用,示例:- --from-file <filename>
everai app run
在本地环境运行应用进行测试
示例:
everai app run
格式:
everai app run [-h] [--port PORT] [--listen LISTEN]
选项:
- -h, --help显示帮助信息
- --port PORT指定服务端口,默认为80
- --listen LISTEN通过设置特定的网络接口,绑定应用的API服务,用以限制通信。网络接口可以是一个具体的IP地址,例如:192.168.1.123。默认为0.0.0.0,支持从任何网络接口接收流量。
everai app get
获取一个应用的信息
示例:
everai app get <your app name>
格式:
everai app get [-h] [--namespace [NAMESPACE]] [--output [OUTPUT]] name
参数:
- name应用名称
选项:
- -h, --help显示帮助信息
- --namespace [NAMESPACE], -n [NAMESPACE]应用的命名空间
- --output [OUTPUT], -o [OUTPUT]输出格式,可选(json, yaml, table, wide),默认为table
everai app update
通过manifest  文件或者在app.py中创建App对象来更新一个应用。
--from-file通过一个manifest文件中的设置来更新应用,否则命令行工具会根据app.py中的设置更新应用.
这个操作可能会引起worker容器的重新部署,比如镜像发生变化。
详细介绍请参考App Update。
示例:
everai app update
格式:
everai app update [-h] [--dry-run] [-f FROM_FILE]
选项:
- -h, --help显示帮助信息
- --dry-run在客户端中试运行
- -f FROM_FILE, --from-file FROM_FILE通过manifest文件(yaml格式)更新应用,示例:- --from-file <filename>
everai app pause
停止应用,所有的worker都会停止
示例:
everai worker list <your app name>
查看应用的worker列表,可以看到有2个正在运行的worker。CREATED_AT和DELETED_AT使用UTC时间显示。
ID                      STATUS    DETAIL_STATUS    CREATED_AT                DELETED_AT
----------------------  --------  ---------------  ------------------------  ------------
8UtmxyvQ4qC67awQMKDgJb  RUNNING   FREE             2024-06-26T08:54:23+0000
Q6FRr6sRVPwFyyMfDCCEFY  RUNNING   FREE             2024-06-26T08:54:23+0000
执行如下的命令,停止示例中的应用。
everai app pause <your app name>
再次查看应用的worker列表,可以看到之前在运行的2个worker已经被停止。
everai worker list <your app name>
ID    STATUS    DETAIL_STATUS    CREATED_AT    DELETED_AT
----  --------  ---------------  ------------  ------------
执行everai app list,可以看到此时应用的状态是PAUSED。
NAME                             NAMESPACE    STATUS    WORKERS    CREATED_AT
-------------------------------  -----------  --------  ---------  ------------------------
test-start-14                    default      PAUSED    0/0        2024-06-18T08:49:30+0000
格式:
everai app pause [-h] [-n [NAMESPACE]] [--dry-run] name
参数:
- name应用名称
选项:
- -h, --help显示帮助信息
- -n [NAMESPACE], --namespace [NAMESPACE]应用的命名空间
- --dry-run在客户端中试运行
everai app resume
恢复使用应用
示例:
当你想恢复被停止(应用的状态为PAUSED)的应用时,可以执行如下命令 :
everai app resume <your app name>
格式:
everai app resume [-h] [-n [NAMESPACE]] name
参数:
- name应用名称
选项:
- -h, --help显示帮助信息
- -n [NAMESPACE], --namespace [NAMESPACE]应用的命名空间
everai app prepare
准备应用,所有被@app.prepare注解的方法都会被执行
示例:
如果你的应用需要用到文件对象存储,那么在你的应用部署到云环境之前,你需要先创建一个卷。
在生产环境,对象存储是非常重要的,你可以通过下面的命令准备它。
这句命令会执行所有被@app.prepare注解过的方法,在这些方法中你应该配置好文件数据。
everai app prepare
格式:
everai app prepare [-h]
选项:
- -h, --help显示帮助信息
everai app list (ls)
显示应用列表
示例:
everai app list
用例输出的结果如下所示,CREATED_AT使用UTC时间显示。
NAME       NAMESPACE    STATUS    WORKERS    CREATED_AT
---------  -----------  --------  ---------  ------------------------
get-start  default      DEPLOYED  3/3        2024-06-18T04:21:37+0000
格式:
everai app list [-h] [-n NAMESPACE] [-A] [--output [OUTPUT]]
选项:
- -h, --help显示帮助信息
- -n NAMESPACE, --namespace NAMESPACE显示指定命名空间下的应用列表
- -A, --all-namespaces显示所有命名空间下的应用列表
- --output [OUTPUT], -o [OUTPUT]输出格式,可选(json, yaml, table, wide),默认为table
everai app queue (q)
显示应用队列
示例:
everai app queue <your app name>
用例输出的结果如下所示,CREATED_AT使用UTC时间显示。
  QUEUE_INDEX  CREATE_AT                 QUEUE_REASON
-------------  ------------------------  --------------
            0  2024-07-03T22:24:07+0000  WorkerBusy
            1  2024-07-03T22:24:07+0000  WorkerBusy
格式:
everai app queue [-h] [-n [NAMESPACE]] [--output [OUTPUT]] name
参数:
- app_name应用名称
选项:
- -h, --help显示帮助信息
- -n [NAMESPACE], --namespace [NAMESPACE]应用的命名空间
- --output [OUTPUT], -o [OUTPUT]输出格式,可选(json, yaml, table, wide),默认为table
everai app event
显示应用事件
示例:
everai app event <your app name>
用例输出的结果如下所示,CREATED_AT使用UTC时间显示。
TYPE    FROM       CREATED_AT                MESSAGE
------  ---------  ------------------------  ------------------------------------------------------------------------------------------------
NORMAL  AppSever   2024-06-25T12:27:05+0000  Worker/oFHDnZHrDMo5WHnQkhcegx is ready now
NORMAL  AppSever   2024-06-25T12:27:05+0000  Worker/jQd38Z5HwRLv24x459CSBG is ready now
NORMAL  Scheduler  2024-06-25T12:26:59+0000  Successfully assigned worker/oFHDnZHrDMo5WHnQkhcegx to node/5a684c93-84c0-4078-821c-a4aeccb61407
NORMAL  Scheduler  2024-06-25T12:26:59+0000  Successfully assigned worker/jQd38Z5HwRLv24x459CSBG to node/5a684c93-84c0-4078-821c-a4aeccb61407
格式:
everai app events [-h] [-n [NAMESPACE]] [--output [OUTPUT]] name