Cloud CLI

通过magento-cloud CLI工具,开发人员和系统管理员能够管理Cloud项目和环境、执行例程并在本地运行自动化任务。 magento-cloud CLI扩展了Cloud Console的特性和功能。 在本地工作站上安装magento-cloud CLI后,您可以在云基础架构Starter和Pro集成环境中使用它来管理Adobe Commerce。

NOTE
这是本地工具,不能使用此方法安装在云环境(只读)上。 您只能通过​ 部署工作流 ​在云环境中安装模块

安装magento-cloud CLI

  1. 在您的​ 本地工作站 ​上,切换到您打算克隆云项目且文件系统所有者具有​ 写入 ​访问权限的目录。

  2. 安装magento-cloud CLI。

    code language-bash
    curl -sS https://accounts.magento.cloud/cli/installer | php
    
  3. magento-cloud CLI添加到bash配置文件。

    code language-bash
    export PATH=$PATH:$HOME/.magento-cloud/bin
    
  4. 重新加载更新的bash配置文件。

    code language-bash
    . ~/.bash_profile
    
  5. 要启动CLI,请调用magento-cloud,并在出现提示时输入您的Cloud帐户凭据。

    code language-bash
    magento-cloud
    
    code language-none
    Welcome to Magento Cloud!
    Please log in using your Magento Cloud account.
    Your email address or username:
    
  6. 验证magento-cloud命令是否位于您的路径中。 以下示例列出了可用的命令。

    code language-bash
    magento-cloud list
    

常用命令

Adobe设计了这些命令以管理Cloud集成环境,并建议从项目目录运行magento-cloud CLI,以便可以省略-p <project-ID>参数。

以下常用的magento-cloud CLI命令列表仅包含必需选项。 您可以将--help选项与任何命令一起使用,以查看更多信息。

命令
描述
magento-cloud login
登录到项目。
magento-cloud list
列出CLI工具的可用命令。
magento-cloud environment:list
列出当前项目中的环境。
magento-cloud environment:checkout
查看现有环境。
magento-cloud environment:merge -e
将此环境中的更改与其父级合并。
magento-cloud variables
此环境中的列表变量。
magento-cloud ssh
使用SSH连接到远程环境。
magento-cloud url
在浏览器中打开Adobe Commerce店面。
magento-cloud web
打开Cloud Console。

环境命令

只有在环境名称中使用空格或大写字母时,环境​ name ​才会与环境​ ID ​不同。 环境ID由所有小写字母、数字和允许的符号组成。 环境名称中的大写字母在ID中转换为小写;环境名称中的空格转换为破折号。

环境名称​ 不能 ​包含为Linux shell或正则表达式保留的字符。 禁止使用的字符包括大括号({ })、圆括号(*)、尖括号(< >)、&符号(&)、% (%)和其他字符。

magento-cloud environment:list命令显示环境层次结构,而git branch则不显示。 如果您有任何嵌套环境,请使用以下内容:

magento-cloud environment:list

重新部署环境

不使用推送触发重新部署。 验证并确认要重新部署的环境。 如果内部版本处于待处理状态,请勿使用重新部署。

magento-cloud environment:redeploy

示例响应:

Are you sure you want to redeploy the environment <environment-name>? [Y/n]
WARNING
当您执行合并、推送或同步环境时,或者当您触发手动重新部署(期间的Commerce应用程序处于维护模式)时,部署过程将开始。 对于生产环境,Adobe建议在非高峰时间完成此工作,以避免服务中断。

Git命令

您可能会注意到其中的一些命令与Git命令类似。 magento-cloud命令直接连接到具有其他功能的基于Git的云项目。 如果您在不使用magento-cloud CLI的情况下创建分支,则它不会“激活”,并且在将更改推送到远程环境时不会自动生成。 magento-cloud CLI命令包含激活。

要创建分支,请使用magento-cloud命令以激活该分支。

magento-cloud environment:branch <new-name> <parent-branch>

对于分支状态:

  • 使用magento-cloud env命令查看环境分支的列表及其状态:活动或非活动。
  • 使用magento-cloud environment:activate命令激活环境分支。

推送空的Git承诺以触发部署。 例如:

git commit --allow-empty -m "redeploy" && git push <branch-name>

某些操作(如添加用户)不会导致部署。

创建环境分支

以下步骤演示了如何交替使用CLI和Git命令来管理本地环境:

  1. 在本地工作站上,转到您的项目目录。

  2. 切换到文件系统所有者

  3. 登录到您的项目。

    code language-bash
    magento-cloud login
    
  4. 列出您的项目。

    code language-bash
    magento-cloud project:list
    
  5. 列出项目中的环境。 每个环境都包含一个活动Git分支,其中包含代码、数据库、环境变量、配置和服务。

    code language-bash
    magento-cloud environment:list
    
    note note
    NOTE
    使用magento-cloud environment:list命令很重要,因为它显示环境层次结构,而git branch命令不显示环境层次结构。
  6. 获取来源分支以获取最新代码。

    code language-bash
    git fetch origin
    
  7. 结帐或切换到特定分支和环境。

    code language-bash
    magento-cloud environment:checkout <environment-ID>
    

    Git命令仅检查Git分支。 magento-cloud checkout命令签出分支并切换到活动环境。

    note tip
    TIP
    您可以使用magento-cloud environment:branch <environment-name> <parent-environment-ID>命令语法创建环境分支。 创建和激活环境分支可能需要一些额外的时间。
  8. 使用环境ID将任何更新的代码拉入到您的本地。 如果环境分支是新的,则不必执行此操作。

    code language-bash
    git pull origin <environment-ID>
    
  9. 可选)创建环境的快照作为备份。

    code language-bash
    magento-cloud snapshot:create -e <environment-ID>
    

更新CLI

magento-cloud CLI会在您登录时检查可用更新,但您可以使用self:update命令检查更新。 如果有可用的更新,请按照说明更新CLI。

如果magento-cloud CLI是最新的,您会看到以下响应:

magento-cloud update
Checking for Magento Cloud CLI updates (current version: X.XX.X)
No updates found
recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26