appcfg.sh 命令行参数

appcfg.sh 工具可执行各种应用管理任务,包括部署应用更新数据存储区索引appcfg 工具包含在 App Engine SDK 中,您可以通过App Engine Java 8 SDK下载并安装该工具。

用途:appcfg.sh [options] <action> [<app-dir>] [<argument>]

<app-dir> 必须是包含 WAR 文件的目录。如需了解详情,请参阅部署应用

操作必须是以下其中一项:
help:打印特定操作的帮助信息。
download_app:下载以前上传的应用版本。
request_logs:以 Apache 常规日志格式写入请求日志。
rollback:回滚正在进行的更新。
start_module_version:启动指定的模块版本。
stop_module_version:停止指定的模块版本。
update:创建或更新应用版本。
update_indexes:更新应用索引。
update_cron:更新应用 Cron 作业。
update_queues:更新应用任务队列定义。
update_dispatch:更新应用调度配置。
update_dos:更新应用 DoS 防护配置。
version:打印版本信息。
set_default_version:设置默认服务版本。
cron_info:显示每个 cron 作业下几次运行的时间。
resource_limits_info:显示资源限制。
vacuum_indexes:删除应用中未使用的索引
backends list:列出当前配置的后端。
backends update:更新指定的后端或所有后端。
backends rollback:回滚之前正在进行的更新。
backends start:启动指定的后端。
backends stop:停止指定的后端。
backends delete:删除指定的后端。
backends configure:配置指定的后端。
list_versions:列出当前上传的版本。
delete_version:删除指定版本。

请使用 'help <action>' 查看详细说明。

选项:

-s SERVER, --server=SERVER
要连接的服务器。
-e EMAIL, --email=EMAIL
要使用的用户名。如果省略,系统会提示您。
-H HOST, --host=HOST
替换与所有 RPC 一起发送的 Host 标头。
-p PROXYHOST[:PORT], --proxy=PROXYHOST[:PORT]
通过给定的代理服务器代理请求。 如果还设置了 --proxy_https,则此处将仅代理 HTTP,否则将同时代理 HTTP 和 HTTPS。
--proxy_https=PROXYHOST[:PORT]
通过给定的代理服务器代理 HTTPS 请求。
--no_cookies
不要针对磁盘执行访问凭据保存/加载操作。
--sdk_root=root
替换 SDK 所在的位置。
--passin
始终从 stdin 读取登录密码。
-A APP_ID, --application=PROJECT_ID
指定项目 ID。
-M MODULE, --module=SERVICENAME
替换 appengine-web.xmlapp.yaml 文件中服务的名称(以前称为“模块”)。
-V VERSION, --version=VERSION
替换 appengine-web.xmlapp.yaml 中的(主要)版本
--oauth2
忽略(OAuth2 是默认值)。
--noisy
记录有关该工具正在执行的操作的更多信息。
--enable_jar_splitting
将大型 jar 文件(大于 10M)拆分为较小的片段。
--jar_splitting_excludes=SUFFIXES
在设置 --enable-jar-splitting 时,与逗号分隔的 SUFFIXES 列表匹配的文件将被排除在所有 jar 文件之外。
--disable_jar_jsps
不将从 JSP 生成的类压缩为 jar 文件。
--enable_jar_classes
将 WEB-INF/类内容压缩为 jar 文件。
--delete_jsps
编译后删除 JSP 源文件。
--retain_upload_dir
不删除上传时使用的临时(暂存)目录。
--compile_encoding
编译 JSP 时使用的字符编码。
-n NUM_DAYS, --num_days=NUM_DAYS
要获取的日志数据的天数。截止时间是世界协调时间 (UTC) 零点。使用 0 可以获取所有可用日志。默认值为 1。
--severity=SEVERITY
要获取的应用级日志消息的严重性。范围是 0 (DEBUG) 到 4 (CRITICAL)。如果省略,则仅返回请求日志。
--include_all
在日志消息中包含所有内容。
-a, --append
附加到现有文件。
-n NUM_RUNS, --num_runs=NUM_RUNS
要计算的预定执行次数
-f, --force
强制删除索引而不提示。
--no_usage_reporting
停用使用情况报告。
--use_google_application_default_credentials
使用 https://developers.google.com/identity/protocols/application-default-credentials 中所述的 Google 应用默认凭据
--service_account_json_key_file=path
用于服务帐号凭据登录的服务帐号 JSON 密钥文件的位置。(Cloud SDK 使用 ~/.config/gcloud/application_default_credentials.json)

用于暂存配置的 appcfg 命令行的替代方法

命令行暂存选项包括下列各项:

  • --enable_jar_splitting
  • --jar_splitting_excludes=SUFFIXES
  • --disable_jar_jsps
  • --enable_jar_classes
  • --delete_jsps

您应该考虑在应用配置文件中设置暂存配置,而不是使用这些命令行选项。这意味着您只需为应用设置一次配置,而不必在每次部署时都指定配置。