Yao 命令

Yao 命令用于启动服务、运行处理器、查看配置信息等操作。

约定

  1. 示例中约定应用根目录为 /data/app, 实际编写时需替换为应用根目录。
  2. 使用 <> 标识自行替换的内容。 例如: icon-<图标名称>, 实际编写时应替换为: icon-foo, icon-bar ...
  3. 文件.yao的后缀和格式和.json结构是一样的,不影响使用都可以兼容。

手册

yao <command> [options] [args...]
命令说明
version显示当前版本号
inspect显示应用配置信息
get下载应用代码
migrate更新模型数据表结构
run运行处理器
start启动服务
socket建立 Socket 连接
websocket建立 WebSocket 连接
dump导出应用数据
restore导入应用数据
studioStudio CLI

全局选项:

参数简写说明
--app-a指定应用路径
--env-e指定环境变量文件
--help-h命令帮助

yao version

显示 Yao 版本号

yao version

yao inspect

显示应用配置信息

cd /data/app
yao inspect

yao get

下载应用代码。从 INFRA 应用库中下载代码。

注意: 当前应用目录必须为空目录

cd /data/app
yao get yaoapp/demo-app

yao migrate

更新数据库结构,创建应用引擎和 models 文件夹下定义的数据表。默认更新 models 下所数据模型关联的数据表。

注意:`migrate --reset` 命令会清空当前数据表, 不推荐在 `production` 模式下使用。

选项:

参数简写说明
--name-n指定模型名称
--reset强制删除数据表后重建
--force在 production 模式下, 强制使用 migrate
cd /data/app
yao migrate
cd /data/app
yao migrate -n pet

yao run

运行处理器, 第一个参数为处理器名称,其余参数为处理器参数表。

如果需要输入复杂数据结构可以使用 :: 前缀,声明参数为 JSON 格式, 例如: '::{"foo":"bar"}'

cd /data/app
yao run scripts.day.NextDay 2020-01-02
cd /data/app
yao run xiang.flow.Return hello '::{"foo":"bar"}'

yao start

启动服务

注意: 如果未检测到应用配置信息, 将启动应用安装服务,根据提示完成安装配置。

选项:

参数简写说明
--alpha启用内测功能
--debug使用开发模式启动
cd /data/app
yao start
cd /data/app
yao start --debug
管理后台默认用户名: `xiang@iqka.com`, 密码: `A123456p+`
如果网络结构较为复杂,命令行提示的IP地址无法访问,可根据实际网络结构,更换为相应IP地址。

yao socket

建立 socket 连接。 使用 Socket Widget DSL 建立 Socket 连接

cd /data/app
yao socket gate.g02

yao websocket

建立 WebSocket 连接。 使用 Socket Widget DSL 建立 WebSocket 连接

cd /data/app
yao websocket message

yao dump

导出应用数据

cd /data/app
yao dump

yao restore

导入应用数据, 参数为使用 yao dump 命令导出的应用数据包文件。

cd /data/app
yao restore /backup/data/app/edge-20220827151641.zip

yao studio

命令:

命令说明
run运行 Stuido 脚本 ( /data/app/studio 目录下脚本)
cd /data/app
yao studio run hello.Foo world '::{"foo":"bar"}'

环境变量

变量说明默认值示例
YAO_LANG命令行语言 en-US 英语 zh-CN 简体中文en-USzh-CN
YAO_ENV运行模式 development 开发环境
production 生产环境
productionproduction
YAO_ROOT应用目录当前目录 ./data/app
YAO_HOSTWEB 服务 HOST0.0.0.0127.0.0.1
YAO_PORTWEB 服务端口50995099
YAO_LOG应用日志文件位置系统标准输出/data/app/logs/application.log
YAO_LOG_MODE日志格式 TEXT | JSONTEXTJSON
YAO_JWT_SECRETJWT 密钥默认为空bLp@bi!oqo-2U+hoTRUG
YAO_DB_DRIVER数据库驱动 mysql | sqlite3sqlite3mysql
YAO_DB_PRIMARY主库连接./db/yao.dbroot:123456@tcp(db-server:3306)/yao?charset=utf8mb4&parseTime=True&loc=Local
YAO_DB_PRIMARY从库连接root:123456@tcp(db-server:3306)/yao?charset=utf8mb4&parseTime=True&loc=Local
YAO_DB_AESKEY加密字段密钥 (MySQL Only)ZLX=T&f6refeCh-ro*r@
YAO_SESSION_STORE会话数据存储方式 memory | redismemoryredis
YAO_SESSION_HOSTRedis 服务器 HOST (会话存储方式为 redis 有效)127.0.0.1127.0.0.1
YAO_SESSION_PORTRedis 服务器端口 (会话存储方式为 redis 有效)63796379
YAO_SESSION_PASSWORDRedis 密码 (会话存储方式为 redis 有效)123456
YAO_STUDIO_PORTYAO STUDIO 服务端口(仅开发模式下有效)50775077
YAO_STUDIO_SECRETYAO STUDIO 密钥空, 自动生成8A9932B141E16AE1FB58409C493E93471EA24D43BF31130FE3E5A600598D9FED

Tips: 可以为应用单独设置环境变量。在应用根目录下添加 .env,服务启动时将优先使用 .env 声明的环境变量。

Yao 命令

Yao 命令用于启动服务、运行处理器、查看配置信息等操作。

约定

  1. 示例中约定应用根目录为 /data/app, 实际编写时需替换为应用根目录。
  2. 使用 <> 标识自行替换的内容。 例如: icon-<图标名称>, 实际编写时应替换为: icon-foo, icon-bar ...
  3. 文件.yao的后缀和格式和.json结构是一样的,不影响使用都可以兼容。

手册

yao <command> [options] [args...]
命令说明
version显示当前版本号
inspect显示应用配置信息
get下载应用代码
migrate更新模型数据表结构
run运行处理器
start启动服务
socket建立 Socket 连接
websocket建立 WebSocket 连接
dump导出应用数据
restore导入应用数据
studioStudio CLI

全局选项:

参数简写说明
--app-a指定应用路径
--env-e指定环境变量文件
--help-h命令帮助

yao version

显示 Yao 版本号

yao version

yao inspect

显示应用配置信息

cd /data/app
yao inspect

yao get

下载应用代码。从 INFRA 应用库中下载代码。

注意: 当前应用目录必须为空目录

cd /data/app
yao get yaoapp/demo-app

yao migrate

更新数据库结构,创建应用引擎和 models 文件夹下定义的数据表。默认更新 models 下所数据模型关联的数据表。

注意:`migrate --reset` 命令会清空当前数据表, 不推荐在 `production` 模式下使用。

选项:

参数简写说明
--name-n指定模型名称
--reset强制删除数据表后重建
--force在 production 模式下, 强制使用 migrate
cd /data/app
yao migrate
cd /data/app
yao migrate -n pet

yao run

运行处理器, 第一个参数为处理器名称,其余参数为处理器参数表。

如果需要输入复杂数据结构可以使用 :: 前缀,声明参数为 JSON 格式, 例如: '::{"foo":"bar"}'

cd /data/app
yao run scripts.day.NextDay 2020-01-02
cd /data/app
yao run xiang.flow.Return hello '::{"foo":"bar"}'

yao start

启动服务

注意: 如果未检测到应用配置信息, 将启动应用安装服务,根据提示完成安装配置。

选项:

参数简写说明
--alpha启用内测功能
--debug使用开发模式启动
cd /data/app
yao start
cd /data/app
yao start --debug
管理后台默认用户名: `xiang@iqka.com`, 密码: `A123456p+`
如果网络结构较为复杂,命令行提示的IP地址无法访问,可根据实际网络结构,更换为相应IP地址。

yao socket

建立 socket 连接。 使用 Socket Widget DSL 建立 Socket 连接

cd /data/app
yao socket gate.g02

yao websocket

建立 WebSocket 连接。 使用 Socket Widget DSL 建立 WebSocket 连接

cd /data/app
yao websocket message

yao dump

导出应用数据

cd /data/app
yao dump

yao restore

导入应用数据, 参数为使用 yao dump 命令导出的应用数据包文件。

cd /data/app
yao restore /backup/data/app/edge-20220827151641.zip

yao studio

命令:

命令说明
run运行 Stuido 脚本 ( /data/app/studio 目录下脚本)
cd /data/app
yao studio run hello.Foo world '::{"foo":"bar"}'

环境变量

变量说明默认值示例
YAO_LANG命令行语言 en-US 英语 zh-CN 简体中文en-USzh-CN
YAO_ENV运行模式 development 开发环境
production 生产环境
productionproduction
YAO_ROOT应用目录当前目录 ./data/app
YAO_HOSTWEB 服务 HOST0.0.0.0127.0.0.1
YAO_PORTWEB 服务端口50995099
YAO_LOG应用日志文件位置系统标准输出/data/app/logs/application.log
YAO_LOG_MODE日志格式 TEXT | JSONTEXTJSON
YAO_JWT_SECRETJWT 密钥默认为空bLp@bi!oqo-2U+hoTRUG
YAO_DB_DRIVER数据库驱动 mysql | sqlite3sqlite3mysql
YAO_DB_PRIMARY主库连接./db/yao.dbroot:123456@tcp(db-server:3306)/yao?charset=utf8mb4&parseTime=True&loc=Local
YAO_DB_PRIMARY从库连接root:123456@tcp(db-server:3306)/yao?charset=utf8mb4&parseTime=True&loc=Local
YAO_DB_AESKEY加密字段密钥 (MySQL Only)ZLX=T&f6refeCh-ro*r@
YAO_SESSION_STORE会话数据存储方式 memory | redismemoryredis
YAO_SESSION_HOSTRedis 服务器 HOST (会话存储方式为 redis 有效)127.0.0.1127.0.0.1
YAO_SESSION_PORTRedis 服务器端口 (会话存储方式为 redis 有效)63796379
YAO_SESSION_PASSWORDRedis 密码 (会话存储方式为 redis 有效)123456
YAO_STUDIO_PORTYAO STUDIO 服务端口(仅开发模式下有效)50775077
YAO_STUDIO_SECRETYAO STUDIO 密钥空, 自动生成8A9932B141E16AE1FB58409C493E93471EA24D43BF31130FE3E5A600598D9FED

Tips: 可以为应用单独设置环境变量。在应用根目录下添加 .env,服务启动时将优先使用 .env 声明的环境变量。