簡體   English   中英

在 docker 容器上運行 Tkinter

[英]Running Tkinter on docker container

我是使用 docker 的新手,目前正在學習如何構建 docker 映像並運行它。 我成功地構建了我的 docker 映像,但是,運行映像時出現此錯誤:

Traceback (most recent call last):
  File "gui.py", line 1, in <module>
    import tkinter as tk
  File "/usr/local/lib/python3.7/tkinter/__init__.py", line 36, in <module>
    import _tkinter # If this fails your Python may not be configured for Tk
ImportError: Error loading shared library libtk8.6.so: No such file or directory (needed by /usr/local/lib/python3.7/lib-dynload/_tkinter.cpython-37m-x86_64-linux-gnu.so)

Dockerfile:

FROM python:alpine3.8 
COPY . /app
WORKDIR /app
RUN pip3 install -r requirements.txt 
ENTRYPOINT [ "python3" ] 
CMD [ "gui.py" ] 

要求.txt:

gspread
oauth2client
fpdf
networkx

我正在嘗試在 docker 中運行 Tkinter 應用程序。 我該如何解決這個問題? 任何幫助將非常感激。 謝謝!

看起來package tk丟失了,希望這能解決您的問題。 從 Dockerfile 為alpine安裝tk包。 修改您的 dockerfile 以如下安裝它,

FROM python:alpine3.8 
COPY . /app
WORKDIR /app
RUN apk update && apk add tk
RUN pip3 install -r requirements.txt 
ENTRYPOINT [ "python3" ] 
CMD [ "gui.py" ] 

如果仍然有任何丟失的包,只需使用RUN apk add <package1> <package2>添加它們

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM