python应用程序的docker错误(用户交互模式?)



输入文本:

Traceback (most recent call last):
File "caesarCipher.py", line 16, in <module>
text=input("Enter the text: ")
EOFError: EOF when reading a line

我该怎么解决这个问题?谢谢

您应该使用-it标志(交互式终端(运行容器。这将允许您与容器内运行的进程进行交互。

例如:

foo.py

x = input('Enter some input: ')
print(x)

Dockerfile

from python
COPY foo.py .
ENTRYPOINT python foo.py

用法

$ docker build . -t foo
$ docker run -it foo
Enter some input: foo
foo
$

我猜问题是您将脚本定义为容器的入口点。在脚本中,输入函数期望有一个tty或一个流。

像这样在容器内运行脚本可以完成任务:

docker run -it your_docker_container /path/to/your/script.py 

最新更新