Skip to main content
 首页 » 编程设计

python之Docker:执行 Python 脚本

2024年09月03日27lori

我有一个 python 脚本,我试图在 docker 容器中正确运行它。我正在努力处理 DOCKERFILE 的 CMD 部分。

我可以让脚本从我的终端正确运行,通过打开交互式 python 控制台然后运行以下命令,根据脚本中的代码连续显示实时更新

exec(open(“coin_flip_demo_v1.0.py").read()) 
test = coin_flip_demo() 
test._run_() 

我的 DOCKERFILE 看起来像

FROM python:3.6 
 
RUN mkdir src 
ADD . /src/ 
RUN pip install pandas 
WORKDIR /src/ 
EXPOSE 32768 32769 32770 
CMD [ "python", "./coin_flip_demo_v1.0.py" ] 

当我尝试运行容器时,它没有给出任何错误,但是当我运行 docker ps 时,没有容器显示

仅供引用

coin_flip_demo_v1.0.py 是我要运行的脚本

coin_flip_demo 是我在该脚本中的主要类

_run_ 是主类中的一个模块。

如果您需要更多信息来解决此问题,请告诉我。

谢谢

请您参考如下方法:

要在容器中运行交互式进程,您应该使用 -i -t 选项启动容器。

这为容器分配了一个 tty。

docker run -it <img>[:tag] 

另请参阅 this 中的答案所以问题。

除了-it选项..你还应该让你的python脚本直接运行(正如你在Dockerfile中提到的那样)

您可以直接从终端运行脚本吗?像这样

python ./coin_flip_demo_v1.0.py 

如果不在python文件末尾添加下面几行

if __name__ == '__main__': 
    test = coin_flip_demo() 
    test._run_()