在位桶管道中出现“ sudo:找不到命令”错误

时间:2019-03-27 06:08:09

标签: python docker bitbucket-pipelines docker-image

在我的bitbucket-pipelines.yml文件中,我有这个:

  - step:
      image: python:3.7.2-stretch
      name: upload to s3
      script:
        - export S3_BUCKET="elasticbeanstalk-us-east-1-133233433288"
        - export VERSION_LABEL=$(cat VERSION_LABEL)
        - sudo apt-get install -y zip # required for packaging up the application
        - pip install boto3==1.3.0 # required for upload_to_s3.py
        - zip --exclude=*.git* -r /tmp/artifact.zip . # package up the application for deployment
        - python upload_to_s3.py # run the deployment script

但是当我在Bitbucket中运行此管道时,出现错误,输出为:

+ sudo apt-get install -y zip
bash: sudo: command not found

为什么不知道sudo是什么意思?这不是所有Linux机器都常见吗?

2 个答案:

答案 0 :(得分:1)

当在env $ PATH中配置的文件夹中找不到二进制文件时,stderr中将显示“找不到命令”错误

首先,您需要确定它是否存在:

find /usr/bin -name "sudo"

如果找到二进制文件,请尝试使用以下命令设置PATH变量:

export PATH=$PATH:/usr/bin/ 

然后尝试再次运行sudo。

答案 1 :(得分:0)

否,sudo并非到处都是。

但是无论如何,您都不必理会它。运行映像时,您是root,因此您可以简单地运行apt-get,而无需考虑权限。