Question:  I am trying to run my poetry based python project inside docker using docker compose When I run the application, it works but it gives me this warning  ch_news_dev_python | Warning: 'news' is an entry point defined in pyproject.toml, but it's not installed as a script. You may get improper `sys.argv[0]`. ch_news_dev_python | ch_news_dev_python | The support to run uninstalled scripts will be removed in a future release. ch_news_dev_python | ch_news_dev_python | Run `poetry install` to resolve and get rid of this message.  My project structure news ├── docker │ ├── development │ │ ├── ... │ │ ├── python_server │ │ │ └── Dockerfile │ │ ├── .env │ │ └── docker-compose.yml │ ├── production │ │ └── ... │ └── test │ └── ... ├── src │ └── news │ ├── __init__.py │ ├── __main__.py │ ├── app.py │ └── ... ├── tests ├── .gitignore ├── pyproject.toml ├── poetry.lock └── ...  My python_server/Dockerfile FROM python:3.10.11-slim ENV PYTHONDONTWRITEBYTECODE 1 \ PYTHONUNBUFFERED 1 RUN apt-get update \ && apt-get install --no-install-recommends -y gcc libffi-dev g++\ && apt-get clean \ && rm -rf /var/lib/apt/lists/* ENV POETRY_VERSION=1.5.0 RUN pip install "poetry==$POETRY_VERSION" RUN groupadd --gid 10000 ch_news \ && useradd --uid 10000 --gid ch_news --shell /bin/bash --create-home ch_news WORKDIR /home/ch_news COPY --chown=10000:10000 pyproject.toml poetry.lock ./ USER ch_news RUN poetry install --no-root --no-ansi --without dev COPY --chown=10000:10000 ./src ./ CMD ["poetry", "run", "news"]  My docker-compose file version: '3.9' # optional since v1.27.0 name: ch_news_dev services: ... ch_news_dev_python: build: context: ../.. dockerfile: ./docker/development/python_server/Dockerfile container_name: ch_news_dev_python depends_on: ch_news_dev_postgres: condition: service_healthy env_file: - .env image: ch_news_dev_python_image networks: - network restart: 'always' volumes: - postgres_certs:/home/ch_news/certs networks: network: driver: bridge volumes: postgres_certs: driver: local postgres_data: driver: local  My pyproject.toml file [tool.poetry] authors = ["..."] description = "..." name = "news" version = "0.1.0" [tool.poetry.dependencies] feedparser = "^6.0.10" python = "^3.10" aiohttp = "^3.8.4" python-dateutil = "^2.8.2" asyncpg = "^0.27.0" loguru = "^0.7.0" [tool.poetry.dev-dependencies] commitizen = "^3.2.2" pre-commit = "^3.3.2" pytest = "^7.3.1" pytest-cov = "^4.0.0" tox = "^4.5.1" bandit = "^1.7.5" black = "^23.3.0" darglint = "^1.8.1" flake8 = "^6.0.0" flake8-bugbear = "^23.5.9" flake8-docstrings = "^1.7.0" isort = "^5.12.0" mypy = "^1.3.0" pytest-clarity = "^1.0.1" pytest-sugar = "^0.9.7" typeguard = "^4.0.0" xdoctest = "^1.1.0" aioresponses = "^0.7.4" pytest-asyncio = "^0.21.0" types-python-dateutil = "^2.8.19" [tool.poetry.group.dev.dependencies] isort = "^5.12.0" types-python-dateutil = "^2.8.19.7" flake8-docstrings = "^1.7.0" xdoctest = "^1.1.1" pre-commit = "^3.3.2" commitizen = "^3.2.2" tox = "^4.5.1" mypy = "^1.3.0" pytest = "^7.3.1" flake8-bugbear = "^23.5.9" black = "^23.3.0" pytest-asyncio = "^0.21.0" bandit = "^1.7.5" typeguard = "^4.0.0" pytest-sugar = "^0.9.7" [tool.coverage.run] branch = true omit = ["src/news/__main__.py", "src/news/app.py"] source = ["news"] [tool.pytest.ini_options] pythonpath = "src" addopts = [ "--import-mode=importlib", ] [tool.coverage.report] fail_under = 95 [tool.isort] profile = "black" src_paths = ["src", "tests"] skip_gitignore = true force_single_line = true atomic = true color_output = true [tool.mypy] pretty = true show_column_numbers = true show_error_codes = true show_error_context = true ignore_missing_imports = true strict = true warn_unreachable = true [tool.poetry.scripts] news = "news.__main__:app" [tool.commitizen] name = "cz_conventional_commits" tag_format = "v$major.$minor.$patch$prerelease" version = "0.0.1" [build-system] build-backend = "poetry.core.masonry.api" requires = ["poetry-core>=1.0.0"]  Can someone kindly tell me how to get rid of this warning? UPDATE 1 Getting the warning even after removing --no-root

Answer: the error is related to the fact that the entry point is declared in poetry in your file pyproject.toml : [tool.poetry.scripts] news = "news.__main__:app"  after declaring the entry point, you must execute the command poetry install  in your terminal