Python Docker映像:_tkinter.TclError:没有显示名称,也没有$ DISPLAY环境变量

时间:2020-09-11 13:56:10

标签: python windows docker containers

Host Machine: Windows 10 Enterprise

Application: Docker Desktop for Windows

Container option: Linux Containers

我有一个Python脚本,基本上是一个倒数计时器。可以从https://www.geeksforgeeks.org/create-countdown-timer-using-python-tkinter/网站上找到该代码 我将此源文件命名为timer.py并能够使用python.exe运行它

我正在尝试使用docker对其进行容器化。 我已经从docker hub提取了Python3.6图像。我的docker文件如下。

FROM python

COPY . /opt/

WORKDIR /opt

ENTRYPOINT ["python", "timer.py"]

我构建了映像,当我运行容器时,出现以下错误

Traceback (most recent call last):
  File "timer.py", line 7, in <module>
    root = Tk()
  File "/usr/local/lib/python3.8/tkinter/__init__.py", line 2261, in __init__
    self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: no display name and no $DISPLAY environment variable

我不了解该错误,我在StackOverflow中搜索了类似错误,但找不到我的问题的解决方案。任何帮助将不胜感激。

注意:1.我只能使用print(“ hello world”)来容器化并运行一个简单的python脚本,但是使用Tkinter时,我无法 2.由于某些原因,无法使用Windows容器选项提取图像,因此请在Linux容器中尝试。

0 个答案:

没有答案