如何将参数传递给在Docker容器内运行的python脚本?

问题描述 投票:2回答:1

我正在docker容器中运行python脚本。根据传递的参数,我的脚本应显示不同的信息。我想通过docker run {my_image_name} {parameters}命令传递此参数,而不是{parameters},我想键入脚本希望接收的一些自定义值。找到一些有关参数和env变量的信息,但不了解。有人可以解释如何解决我的问题吗?我应该在dockerfile中添加什么?Dockerfile内容:

FROM python:3.8.2-buster
WORKDIR /usr/src/app
COPY metrics.py .
RUN pip install --upgrade pip
RUN python -m pip install psutil
CMD python /usr/src/app/metrics.py

[当我运行docker时,运行{my_image_name} {my_script_name} {parameter}我得到:

docker: Error response from daemon: OCI runtime create failed: container_linux.go:346: starting container process caused "exec: \"metrics.py\": executable file not found in $PATH": unknown.

我在Windows上工作。

python docker dockerfile parameter-passing
1个回答
0
投票

您缺少ENTRYPOINT

Docker文件应该是这样的:

FROM python:3.8.2-buster
WORKDIR /usr/src/app
COPY metrics.py .
RUN pip install --upgrade pip
RUN python -m pip install psutil
ENTRYPOINT ["python"]
CMD ["/usr/src/app/metrics.py"]
© www.soinside.com 2019 - 2024. All rights reserved.