在mac
和linux
上运行以下docker命令可以正常运行,但在ubuntu
上运行时找不到aws cli
凭据。它返回以下消息:Unable to locate credentialsCompleted 1 part(s) with ... file(s) remaining
该命令运行镜像并挂载数据量,然后从和s3存储桶中复制文件,并在docker容器中启动bash shell。sudo docker run -it --rm -v ~/.aws:/root/.aws username/docker-image sh -c 'aws s3 cp s3://bucketname/filename.tar.gz /home/emailer && cd /home/emailer && tar zxvf filename.tar.gz && /bin/bash'
我在这里想念什么?
这是我的Dockerfile
:
FROM ubuntu:latest
#install node and npm
RUN apt-get update && \
apt-get -y install curl && \
curl -sL https://deb.nodesource.com/setup | sudo bash - && \
apt-get -y install python build-essential nodejs
#install and set-up aws-cli
RUN sudo apt-get -y install \
git \
nano \
unzip && \
curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip" && \
unzip awscli-bundle.zip
RUN sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
# Provides cached layer for node_modules
ADD package.json /tmp/package.json
RUN cd /tmp && npm install
RUN mkdir -p /home/emailer && cp -a /tmp/node_modules /home/emailer/
最佳答案
如果您运行,您会看到什么
ls -l ~/.aws/config
在您的docker实例中?
关于linux - docker -尽管存在容器,但无法在容器中找到AWS凭证,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31073863/