this post was submitted on 25 Jul 2023
3 points (80.0% liked)

Python

6424 readers
19 users here now

Welcome to the Python community on the programming.dev Lemmy instance!

๐Ÿ“… Events

PastNovember 2023

October 2023

July 2023

August 2023

September 2023

๐Ÿ Python project:
๐Ÿ’“ Python Community:
โœจ Python Ecosystem:
๐ŸŒŒ Fediverse
Communities
Projects
Feeds

founded 1 year ago
MODERATORS
 

I ran Python, FastAPI, and PostgreSQL as docker-compose, but it doesn't work with these errors.
I don't know why this error occurs.
Full Error Message:

learn-fastapi-web-1  | Traceback (most recent call last):
learn-fastapi-web-1  |   File "<frozen runpy>", line 198, in _run_module_as_main
learn-fastapi-web-1  |   File "<frozen runpy>", line 88, in _run_code
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/site-packages/uvicorn/__main__.py", line 4, in <module>
learn-fastapi-web-1  |     uvicorn.main()
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1157, in __call__
learn-fastapi-web-1  |     return self.main(*args, **kwargs)
learn-fastapi-web-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1078, in main
learn-fastapi-web-1  |     rv = self.invoke(ctx)
learn-fastapi-web-1  |          ^^^^^^^^^^^^^^^^
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1434, in invoke
learn-fastapi-web-1  |     return ctx.invoke(self.callback, **ctx.params)
learn-fastapi-web-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/site-packages/click/core.py", line 783, in invoke
learn-fastapi-web-1  |     return __callback(*args, **kwargs)
learn-fastapi-web-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 416, in main
learn-fastapi-web-1  |     run(
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 587, in run
learn-fastapi-web-1  |     server.run()
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 61, in run
learn-fastapi-web-1  |     return asyncio.run(self.serve(sockets=sockets))
learn-fastapi-web-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/asyncio/runners.py", line 190, in run
learn-fastapi-web-1  |     return runner.run(main)
learn-fastapi-web-1  |            ^^^^^^^^^^^^^^^^
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/asyncio/runners.py", line 118, in run
learn-fastapi-web-1  |     return self._loop.run_until_complete(task)
learn-fastapi-web-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
learn-fastapi-web-1  |   File "uvloop/loop.pyx", line 1517, in uvloop.loop.Loop.run_until_complete
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 68, in serve
learn-fastapi-web-1  |     config.load()
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/site-packages/uvicorn/config.py", line 467, in load
learn-fastapi-web-1  |     self.loaded_app = import_from_string(self.app)
learn-fastapi-web-1  |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/site-packages/uvicorn/importer.py", line 21, in import_from_string
learn-fastapi-web-1  |     module = importlib.import_module(module_str)
learn-fastapi-web-1  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
learn-fastapi-web-1  |   File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
learn-fastapi-web-1  |     return _bootstrap._gcd_import(name[level:], package, level)
learn-fastapi-web-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
learn-fastapi-web-1  |   File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
learn-fastapi-web-1  |   File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
learn-fastapi-web-1  |   File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
learn-fastapi-web-1  |   File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
learn-fastapi-web-1  |   File "<frozen importlib._bootstrap_external>", line 940, in exec_module
learn-fastapi-web-1  |   File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
learn-fastapi-web-1  |   File "/main.py", line 5, in <module>
learn-fastapi-web-1  |     from . import crud, models, schemas
learn-fastapi-web-1  | ImportError: attempted relative import with no known parent package

Dockerfile:

FROM python:latest
COPY . .
RUN pip install -r requirements.txt
CMD python -m uvicorn --host=0.0.0.0 main:app
you are viewing a single comment's thread
view the rest of the comments
[โ€“] [email protected] 4 points 1 year ago (1 children)

Thanks to you, I solved the problem!

[โ€“] [email protected] 4 points 1 year ago* (last edited 1 year ago)

No problem, glad to hear!

You might want to consider putting all your python code into a 'src' folder, it's a good practice to have only the files you need inside the docker container and that makes it so you can just build it with the entire folder.

Outside of the src folder you'd keep your docker files, dependencies and such.