安装与配置saectl工具

更新时间:
复制为 MD 格式

如果您初次使用saectl工具,请参考本文完成工具的安装与配置。

前提条件

已开通Serverless应用引擎并授权,详见准备工作

安装saectl工具

请根据您的操作系统类型选择相关的安装包和安装方式。

操作系统

安装包

安装方式

macOS

  1. 将压缩包下载到本地并解压,解压后的路径中包含saectl

  2. 命令行中进入saectl所在路径,执行mv ./saectl /usr/local/bin将其移动到系统工具所在路径。

Linux

  1. 将压缩包下载到本地,在命令行中运行如下命令tar -zxvf ${压缩包文件名}将压缩包解压,解压后的路径中包含saectl

  2. 命令行中进入saectl所在路径,执行mv ./saectl /usr/local/bin将其移动到系统工具所在路径。

Windows

  1. 将压缩包下载到本地并解压,解压后的路径中包含saectl.exe

  2. 将解压后的路径添加到PATH系统环境变量。

Release Notes

版本

发布日期

变更说明

v0.1.10

2026/01/27

新增自动补全命令功能。

v0.1.9

2025/12/25

修复国际站exec命令的bug。

v0.1.8

2025/11/17

修复convert命令的bug。

v0.1.7

2025/07/11

  1. 新增通过convert批量转化的功能。

  2. 修复一些 bug。

v0.1.6

2025/06/30

新增 convert 功能,通过执行saectl convert -f input.yaml -o output.yaml命令实现 K8s yaml 向 SAE yaml 的转化。

v0.1.5

2025/05/23

支持 cred 相关命令。

v0.1.4

2024/02/07

kubectl-sae命令改为saectl命令。

v0.1.3

2024/12/24

调整客户端超时时间为 60s,解决超时报错问题。

v0.1.2

2024/11/20

  1. 支持通过saectl upload命令上传代码包。

  2. 优化saectl version命令的输出。

v0.1.1

2024/11/11

  1. 客户端指定-n时,校验客户端指定的namespace是否和yaml一致。

  2. 客户端不指定-n时,以yaml中的namespace为准。

验证安装成功

在命令行中运行saectl version,返回saectl工具的相关版本信息,表明已成功安装saectl工具。

查看帮助信息

运行命令的过程中,可以通过--help参数查询帮助信息,例如:

  • saectl --help返回saectl后面可以跟随的命令,例如getdescribeapply

  • saectl apply --help返回saectl apply后面可以跟随的参数,例如-f-o

配置saectl工具

saectl工具需要获取在SAE部署应用和管理资源的权限,因此需要在环境变量中配置阿里云账号的AccessKey ID、AccessKey Secret、应用部署地域等信息。

获取AccessKey IDAccessKey Secret

您需要创建AccessKey,并记录AccessKey IDAccessKey Secret。

配置环境变量

请根据您的操作系统选择配置方式。

Linux系统或macOS系统

在终端中执行echo $SHELL命令,查看默认Shell类型。根据默认Shell类型选择配置方式。

Zsh

  1. 执行以下命令来将环境变量设置追加到~/.zshrc 文件中。

    # 用您的 AccessKey ID 代替 YOUR_ACCESS_KEY_ID
    echo "export ALICLOUD_ACCESS_KEY='YOUR_ACCESS_KEY_ID'" >> ~/.zshrc
    # 用您的 AccessKey Secret 代替 YOUR_ACCESS_KEY_SECRET
    echo "export ALICLOUD_SECRET_KEY='YOUR_ACCESS_KEY_SECRET'" >> ~/.zshrc
    # 用您的 应用部署地域 代替 cn-beijing
    echo "export ALICLOUD_REGION='cn-beijing'" >> ~/.zshrc
  2. 执行以下命令,使变更生效。

    source ~/.zshrc
  3. 重新打开一个终端窗口,运行以下命令检查环境变量是否生效。

    echo $ALICLOUD_ACCESS_KEY, $ALICLOUD_SECRET_KEY, $ALICLOUD_REGION

Bash

  1. 执行以下命令来将环境变量设置追加到~/.bashrc 文件中。

    # 用您的 AccessKey ID 代替 YOUR_ACCESS_KEY_ID
    echo "export ALICLOUD_ACCESS_KEY='YOUR_ACCESS_KEY_ID'" >> ~/.bashrc
    # 用您的 AccessKey Secret 代替 YOUR_ACCESS_KEY_SECRET
    echo "export ALICLOUD_SECRET_KEY='YOUR_ACCESS_KEY_SECRET'" >> ~/.bashrc
    # 用您的 应用部署地域 代替 cn-beijing
    echo "export ALICLOUD_REGION='cn-beijing'" >> ~/.bashrc
  2. 执行以下命令,使变更生效。

    source ~/.bashrc
  3. 重新打开一个终端窗口,运行以下命令检查环境变量是否生效。

    echo $ALICLOUD_ACCESS_KEY, $ALICLOUD_SECRET_KEY, $ALICLOUD_REGION

Windows系统

本文以使用CMD命令行为例。

  1. CMD中运行以下命令。

    # 用您的 AccessKey ID 代替 YOUR_ACCESS_KEY_ID
    setx ALICLOUD_ACCESS_KEY "YOUR_ACCESS_KEY_ID"
    # 用您的 AccessKey Secret 代替 YOUR_ACCESS_KEY_SECRET
    setx ALICLOUD_SECRET_KEY "YOUR_ACCESS_KEY_SECRET"
    # 用您的 应用部署地域 代替 cn-beijing
    setx ALICLOUD_REGION "cn-beijing"
  2. 重新打开一个CMD窗口,运行以下命令检查环境变量是否生效。

    echo %ALICLOUD_ACCESS_KEY%, %ALICLOUD_SECRET_KEY%, %ALICLOUD_REGION%

验证配置成功

在命令行中运行saectl get ns,返回账号中指定应用部署地域的命名空间信息,表明已成功配置saectl工具。

命令行自动补全

saectl 支持 Bash、Zsh、Fish 和 PowerShell 的命令行自动补全功能,可以帮助您快速输入命令和参数。

安装自动补全

请根据您使用的 Shell 类型选择对应的安装方式。

Bash

执行以下命令安装 Bash 自动补全。

# 生成补全脚本
saectl completion bash > ~/.saectl-completion.bash

# 添加到 .bashrc
echo 'source ~/.saectl-completion.bash' >> ~/.bashrc

# 立即生效
source ~/.bashrc

macOS 用户:macOS 默认 Bash 版本较旧,建议使用 Zsh 或升级 Bash:

brew install bash-completion@2
saectl completion bash > $(brew --prefix)/etc/bash_completion.d/saectl

Zsh

执行以下命令安装 Zsh 自动补全。

# 生成补全脚本
saectl completion bash > ~/.saectl-completion.bash

# 添加到 .zshrc(使用 bashcompinit 兼容模式)
cat >> ~/.zshrc << 'EOF'
autoload -U +X bashcompinit && bashcompinit
source ~/.saectl-completion.bash
EOF

# 立即生效
source ~/.zshrc

Fish

执行以下命令安装 Fish 自动补全。

# 生成补全脚本(自动生效)
saectl completion fish > ~/.config/fish/completions/saectl.fish

PowerShell

执行以下命令安装 PowerShell 自动补全。

# 生成补全脚本
saectl completion powershell | Out-String | Invoke-Expression

# 添加到 Profile(永久生效)
saectl completion powershell >> $PROFILE

使用自动补全

安装完成后,在命令行输入 saectl 后按 Tab 键即可触发补全。

  • 命令补全:输入 saectl 后按 Tab,显示可用命令(如 get、create、delete、apply、describe、logs、exec 等)。

  • 资源类型补全:输入 saectl get 后按 Tab,显示可用资源类型(如 namespaces、deployments、pods、services、configmaps、secrets、ingresses 等)。

  • 资源名称补全:输入资源类型后按 Tab,补全当前命名空间下的具体资源名称。

  • 参数补全:输入 -- 后按 Tab,显示可用参数(如 --namespace、--output、--all-namespaces、--selector 等)。

  • 容器名称补全:使用 logs 或 exec 命令时,按 Tab 可补全 Pod 中的容器名称。

清除补全缓存:如遇补全异常,可执行以下命令清除缓存。

# Zsh
rm -f ~/.zcompdump*
exec zsh

# Bash
hash -r

卸载自动补全

如需卸载自动补全,请根据您使用的 Shell 类型执行对应的卸载操作。

  • Bash:删除 ~/.saectl-completion.bash 文件,并从 ~/.bashrc 中删除相关的 source 行。

  • Zsh:删除 ~/.saectl-completion.bash 文件,并从 ~/.zshrc 中删除相关行。

  • Fish:删除 ~/.config/fish/completions/saectl.fish 文件。