我正在从docker容器内部运行一个python应用程序。应用程序是一个脚本,它使用子进程顺序地调用一组可执行文件。
当我在我的Centos机器上测试它时,它运行得很好,但是当在docker容器中调用调用可执行文件的子进程时,它会失败,并显示"file not fine“(可能是针对可执行文件)
我尝试过使用Python2.7和Centos7作为基本容器,但问题仍然存在。
产生错误的python代码是:
def __CallCommand(self, program, command):
""" Allows execution of a simple command. """
out = ""
err = ""
p = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
out,err = p.communicate()
错误是: OSError: Errno 2没有这样的文件或目录
这是我的dockerfile
FROM python:2.7-alpine
RUN mkdir -p /input
RUN mkdir -p /output
RUN mkdir -p /executables
COPY config.yml .
COPY executables /executables
COPY pipeline.py .
COPY input /input
ENTRYPOINT ["python", "pipeline.py", "-i", "/input/inputFile.txt", "-o", "output"]
https://stackoverflow.com/questions/55463870
复制相似问题