Skip to content

Unable to import module 'app': No module named '_tkinter'", "errorType": "Runtime.ImportModuleError" #90

Open
@ganesh3

Description

@ganesh3

Hi,

I am trying to create a docker containers that will run on lambda but I continuously get the error: [Unable to import module 'app': No module named '_tkinter'", "errorType": "Runtime.ImportModuleError" on running the container.

I am sharing the my Dockerfile below:

FROM public.ecr.aws/lambda/python:3.8
RUN yum -y update
RUN yum -y install gcc
RUN yum install -y gcc-c++
RUN yum install -y git
RUN yum install -y which
COPY requirements.txt ./requirements.txt
RUN pip install -r requirements.txt \
    && pip install -e git+https://github.com/ganesh3/icevision.git@master#egg=icevision[inference] --upgrade
RUN mkdir -p ./fonts/
RUN curl -LJO https://raw.githubusercontent.com/airctic/storage/master/SpaceGrotesk-Medium.ttf
RUN cp SpaceGrotesk-Medium.ttf ./fonts/
RUN yum install -y tkinter tcl-devel tk-devel
COPY model_dir ./model_dir
COPY /app/app.py   ./
CMD ["app.handler"] 

The requirements.txt:

--find-links  https://download.pytorch.org/whl/torch_stable.html
torch==1.10.0+cpu 
torchvision==0.11.1+cpu
--find-links  https://download.openmmlab.com/mmcv/dist/cpu/torch1.10.0/index.html
mmcv-full==1.3.17
mmdet==2.17.0

The tkinter package is a basic package in python and hence required but even after installing it is not able to find the package. I logged in to the docker container using the below:

docker exec -it <container_name> sh

Then I logged into the python shell and ran:

>>> import tkinter
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/var/lang/lib/python3.8/tkinter/__init__.py", line 36, in <module>
    import _tkinter # If this fails your Python may not be configured for Tk
ModuleNotFoundError: No module named '_tkinter'

I ran the following in the python shell:

import subprocess
subprocess.call(['pip', 'install', 'tk'])

I also ran the following to install tkinter:

yum install -y tkinter
yum install -y python3-tkinter

Nothing seems to work and looks like the was lambda python runtime needs to have this package to run python smoothly. Can someone please suggest?

Warm Regards
Ganesh Bhat

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions