部署代码
要在 Managed Runtime 中运行您的商务应用程序,您必须首先推送代码捆绑包并将其部署到目标环境。
本指南向您展示如何:
- 设置您的 API 密钥。
- 使用命令行脚本将捆绑包推送到 Managed Runtime。
- 使用 Runtime Admin Web 应用程序将捆绑包部署到生产环境 (Production)。
在使用 Managed Runtime 和 Runtime Admin 之前必须启用它们,并且您必须请求访问它们。要为您的组织启用 Managed Runtime 和 Runtime Admin,请联系您的 Salesforce 帐户团队。要获得访问权限,请让您的 Commerce Cloud 管理员使用 Account Manager 将以下角色之一添加到您的帐户:Managed Runtime User(托管运行时用户)或 Managed Runtime Admin(托管运行时管理员)。
如果您的主目录中已有 .mobify
文件,则可跳过此部分。
在可以推送捆绑包之前,您必须先授权您的计算机。
通过查找您的个人 API 密钥开始授权过程:
- 登录 Runtime Admin。
- 点击用户概况图标(右上角)并点击帐户设置。
- 向下滚动到名为 API 密钥的部分并查找个人 API 密钥。
- 如果您还没有创建 API 密钥,请点击创建链接。
- 如果您已有 API 密钥,请点击重置链接,然后在要求确认时点击重置我的 API 密钥。
- 复制命令以使用您的 API 密钥。
为安全起见,返回“帐户设置”页面时,API 密钥不会完整显示,所以必须重置,以重新复制完整 API 密钥。
通过命令行转到 PWA Kit 项目目录并运行复制的命令:
在要用于推送捆绑包的任何其他计算机上再次运行命令。
推送捆绑包需要运行一个脚本,该脚本将您的代码打包成 Webpack 捆绑包并将其上传到 Runtime Manager(运行时管理)。
在推送您的第一个捆绑包之前,请验证 PWA Kit 项目目录中的 package.json
文件是否配置正确:
- 登录 Runtime Admin。
- 点击项目的名称。
- 点击左侧导航中的项目设置。
- 复制项目 ID 字符串。示例:
my-project
。 - 将其粘贴到
package.json.
中的name
字段
为确保捆绑包在部署时正常工作,您必须在 Runtime Admin 中设置您环境中的代理。
如果使用的是 SLAS 专用客户端,则必须通过环境变量设置客户端密码。
默认情况下,从 PWA Kit 3.5 及更高版本生成的项目将配置为使用 SLAS 专用客户端。
要了解有关使用 SLAS 专用客户端的更多信息,请参阅使用 Slas 专用客户端。
要推送捆绑包,请转到命令行并从项目目录运行以下命令:
有关您可以提供给推送脚本的其他选项的列表,请运行 npm run push -- --help
。
成功推送捆绑包后,消息 Beginning upload…
会出现在终端中,然后是消息 Bundle Uploaded!
。
如果出现问题,请在 Beginning upload…
消息后查找终端中的三个可能错误消息(基于 HTTP 响应状态代码)。
以下是对每条错误消息进行疑难解答的方法。
当 package.json
指定名称的项目不存在或您无权更改项目时,终端会返回 HTTP 404
错误。
要修复错误:
- 重复这些步骤以推送捆绑包,并确保您传递给推送脚本的电子邮件地址和 API 密钥设置与 Runtime Admin 中的设置相匹配。
- 验证您的项目是否出现在项目下的 Runtime Admin 主页上。
- 如果您的项目未出现,请联系支持人员以确保该项目已创建并且您已被授予作为团队成员的访问权限。
- 在 Runtime Admin 上打开项目。
- 点击左侧导航中的项目设置。
- 复制项目 ID 字符串。示例:
my-project
。 - 打开您的项目目录内部的
package.json
。 - 验证
name
和projectSlug
的值是否与您复制的项目 ID 字符串匹配。
当您无权推送捆绑包时,终端会返回 HTTP 401
错误。要修复此错误,请联系您的 Commerce Cloud Account Manager 管理员并要求提升您的权限以包括推送捆绑包。
如果您的捆绑包太大,终端会返回 HTTP 413
错误。捆绑包的最大大小为 400 MB,捆绑包内所有 ssr_only
和 ssr_shared
文件的最大大小为 249 MB。要修复此错误,请通过检查项目中的构建文件夹来检查捆绑包的大小。如果您的项目接近最大尺寸或已经超过,可以采取以下措施来减少:
- 移除未使用的素材
- 删除不必要的素材
- 缩小图像
减小项目文件的大小后,再次尝试推送捆绑包。
当您的本地计算机或网络代理(例如企业 VPN 或防火墙)尚未配置为与托管在 cloud.mobify.com 的 Managed Runtime API 进行通信时,可能会出现 HTTPS 错误。
这些错误可能包括类似 unable to get local issuer certificate
或 self signed certificate in certificate chain
的消息。
要解决这些错误,请与您的公司 IT 团队合作,为您的公司网络环境配置 Node.js 安装。
成功推送捆绑包后,您可以将其部署到目标环境。
对于使用 PWA Kit 和 Managed Runtime 的任何站点,您一次只能指定一个捆绑包为每个环境部署。默认情况下,每个项目都带有一个环境,称为 production
。您可以使用 Runtime Admin 或 Managed Runtime API 创建更多环境。
要部署捆绑包:
- 登录 Runtime Admin。
- 点击项目的名称。
- 在环境下,点击要部署到环境的名称(例如:生产环境 (Production))。
- 在捆绑包下,点击捆绑包旁边的部署按钮。
- 点击确认部署。
- 等待部署完成。
成功完成部署后,捆绑包出现在标题已部署捆绑包下方。
如果是第一次部署到新环境,完成该过程最多可能需要一个小时。除非需要更改 CDN,否则后续部署大约需要一分钟。CDN 更改大约需要 15 分钟,并且在部署包含对请求处理器或代理配置的更改时需要。