在我的高山盒子中成功安装awscli之后,当我尝试运行它时,它说找不到aws
命令。即使我在$ PATH中包含了aws安装路径。
这是我的dockerfile:
FROM alpine:3.6
RUN apk -v --update add \
python3 \
py-pip \
groff \
less \
mailcap \
curl \
&& \
pip install --upgrade awscli==1.14.5 s3cmd==2.0.1 python-magic boto3 pyyaml && \
apk -v --purge del py-pip && \
rm /var/cache/apk/*
WORKDIR /project
COPY wait-for-localstack.sh .
RUN chmod 755 wait-for-localstack.sh
RUN ls -ltr
COPY test_cf_create_or_update.py .
ENV PATH="/usr/bin/:$PATH"
ENTRYPOINT ["/bin/sh"]
CMD ["./wait-for-localstack.sh", "http://localhost:4566", "python3", "test_cf_create_or_update.py"]
和wait-for-localstack.sh
#!/usr/bin/env bash
host="$1"
shift
cmd="$@"
which aws
until aws --region eu-west-1 --endpoint-url="$host" s3 mb s3://mytestbucket;
do
>&2 echo "S3 is unavailable - sleeping"
sleep 1
done
sleep 30
>&2 echo "localstack is up - executing command"
echo "hello world"
exec $cmd
现在,在构建之后,如果我运行它,就会抱怨aws: not found
即使aws已安装在/usr/bin/aws