python打开txt文件找不到-Docker Python脚本找不到文件

我已经成功构建了一个Docker容器并将我的应用程序文件复制到Dockerfile中的容器中.但是,我正在尝试执行一个引用输入文件的Python脚本(在Docker构建期间复制到容器中).我似乎无法弄清楚为什么我的脚本告诉我它无法找到输入文件.我包括我用于构建下面容器的Dockerfile,以及正在查找它找不到的输入文件的Python脚本的相关部分.

Dockerfile:

FROM alpine:latest

RUN mkdir myapplication

COPY . /myapplication

RUN apk add --update python py2-pip && adduser -D aws

WORKDIR /home/aws

RUN mkdir aws && pip install --upgrade pip && pip install awscli && pip install -q --upgrade pip && pip install -q --upgrade setuptools && pip install -q -r /myapplication/requirements.txt

CMD ["python", "/myapplication/script.py", "/myapplication/inputfile.txt"]

Python脚本的相关部分:

if len(sys.argv) >= 2:

sys.exit('ERROR: Received 2 or more arguments. Expected 1: Input file name')

elif len(sys.argv) == 2:

try:

with open(sys.argv[1]) as f:

topics = f.readlines()

except Exception:

sys.exit('ERROR: Expected input file %s not found' % sys.argv[1])

else:

try:

with open('inputfile.txt') as f:

topics = f.readlines()

except:

sys.exit('ERROR: Default inputfile.txt not found. No alternate input file was provided')

主机上的Docker命令导致错误:

sudo docker run -it -v $HOME/.aws:/home/aws/.aws discursive python /discursive/index_twitter_stream.py

上面命令的错误:

ERROR: Default inputfile.txt not found. No alternate input file was provided

AWS的内容来自关于如何将主机的AWS凭证传递到Docker容器以用于与AWS服务交互的教程.我使用了这里的元素:https://github.com/jdrago999/aws-cli-on-CoreOS

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值