我不确定堆栈溢出或系统故障是否是正确的堆栈交换站点,但是我正在处理堆栈溢出导致alicloud站点发布以添加标签并在此处提出问题。
所以我当前正在基于Docker:stable构建映像,这是一个高山发行版,将安装aliyun-cli并可供使用。但是,在运行命令时,出现“找不到命令”的怪异错误。我已按照https://partners-intl.aliyun.com/help/doc-detail/139508.htm的说明将aliyun二进制文件移至/ usr / sbin
例如,这是我的Dockerfile
FROM docker:stable
RUN apk update && apk add curl
#Install python 3
RUN apk update && apk add python3 py3-pip
#Install AWS Cli
RUN pip3 install awscli --upgrade
# Install Aliyun CLI
RUN curl -L -o aliyun-cli.tgz https://aliyuncli.alicdn.com/aliyun-cli-linux-3.0.30-amd64.tgz
RUN tar -xzvf aliyun-cli.tgz
RUN mv aliyun /usr/bin
RUN chmod +x /usr/bin/aliyun
RUN rm aliyun-cli.tgz
但是当我运行aliyun(可以自动完成)时,我得到了这个
/ # aliyun
sh: aliyun: not found
我已经尝试将其移至其他垃圾箱。进入该文件夹并显式调用它,但始终始终找不到命令。任何建议都将受到欢迎。
您是否选中了此Dockerfile?
还有为什么您需要在同一映像中安装aws-cli
,以及当AWS提供managed aws-cli
映像时为何需要自行维护它。
aws-cli
就是aws-cli图像,但是如果要在现有图像中使用,则可以尝试]]
docker run --rm -it amazon/aws-cli --version
DockerFile
RUN pip install awscli --upgrade
构建并运行
FROM python:2-alpine3.8 LABEL com.frapsoft.maintainer="Maik Ellerbrock" \ com.frapsoft.version="0.1.0" ARG SERVICE_USER ENV SERVICE_USER ${SERVICE_USER:-aliyun} RUN apk add --no-cache curl RUN curl https://raw.githubusercontent.com/ellerbrock/docker-collection/master/dockerfiles/alpine-aliyuncli/requirements.txt > /tmp/requirements.txt RUN \ adduser -s /sbin/nologin -u 1000 -H -D ${SERVICE_USER} && \ apk add --no-cache build-base && \ pip install aliyuncli && \ pip install --no-cache-dir -r /tmp/requirements.txt && \ apk del build-base && \ rm -rf /tmp/* USER ${SERVICE_USER} WORKDIR /usr/local/bin ENTRYPOINT [ "aliyuncli" ] CMD [ "--help" ]
输出
docker build -t aliyuncli .
docker run -it --rm aliyuncli