You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bitbucket Pipeline运行SQS消息发送脚本提示aws命令未找到如何解决

错误原因

报错./scripts/sendsqsreq.sh: line 14: aws: command not found的核心原因是你Bitbucket Pipeline执行该脚本的容器环境中,没有预安装AWS CLI工具,这是调用AWS SQS接口的必需依赖。

解决方案

你可以根据你的Pipeline场景选以下任意一种方案处理:

  • 方案1:使用自带AWS CLI的运行镜像
    如果你的发送SQS步骤不需要额外依赖,直接在bitbucket-pipelines.yml对应的step中指定官方AWS CLI镜像即可:

    steps:
      - step:
          name: 发送SQS消息
          image: amazon/aws-cli:latest
          script:
            - ./scripts/sendsqsreq.sh
    
  • 方案2:在现有镜像中手动安装AWS CLI
    如果你的step还要同时处理构建等其他任务,需要保留原有的运行镜像,就在执行脚本前添加安装AWS CLI的命令:

    1. 若使用Debian/Ubuntu系镜像:
    apt-get update && apt-get install -y awscli
    
    1. 若使用Alpine系镜像:
    apk add --no-cache aws-cli
    
    1. 若需要安装最新AWS CLI v2版本,使用官方安装脚本:
    curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
    unzip awscliv2.zip
    ./aws/install
    

注意事项

  • 安装AWS CLI的命令必须和执行sendsqsreq.sh的命令放在同一个Pipeline step中,Bitbucket Pipeline每个step都会启动全新的容器,跨step的安装操作不会生效。
  • 提前在Bitbucket项目的变量配置中添加有权限调用SQS的AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY变量,AWS CLI会自动读取这两个变量完成认证,不需要写入脚本。
  • 你当前脚本中message-body的bitbukcet为拼写错误,建议修正为bitbucket,避免消息内容异常。

内容的提问来源于stack exchange,提问作者MaxxABillion

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 17:15:02