Replies: 1 comment 4 replies
|
pytest, pytest-docker and docker are in the image and shouldn't be. That part is right and it's a small cleanup. moto and pytest-asyncio are not in the image at all, they only exist in pyproject for local development. fake-useragent is a runtime dependency. The web page loader imports it when fetching URLs, so removing it degrades web search and web page ingestion. git, gcc, build-essential, python3-dev and libmariadb-dev are absolutely needed at runtime, not build-only. Tools and functions can declare their own pip requirements and those are installed into the running container, so it needs a working compiler and git for anything that isn't a prebuilt wheel. libmariadb-dev is there for the same reason, MariaDB support is a manual pip install by design. A slim runtime stage without a toolchain would break every tool with a source-only dependency. netcat-openbsd and zstd have no references anywhere in the repository. black also stays, it is used by the code formatting endpoint. So out of all the ones you listed, only 2 are actually unused. All the others either aren't even in the image or serve a critical function which if removed, will break real features inside Open WebUI Not sure where you got the list from and thought all of them are unused (?) |
Uh oh!
There was an error while loading. Please reload this page.
Hi,
I noticed, that in the docker image, there are dependencies installed, which should not be there when running in production (even though not actively used when running it in prod). There are tons of best-practice guids sayting basically the same think like https://docs.docker.com/build/building/best-practices/
Here the list of those dependencies:
I'm not entirely sure about
python3-devbut I doubt it is needed.Those dependencies should be kicked out of a prod image IMO.
All reactions