3D-Beacons / 3d-beacons-client

Implementation of the 3D-Beacons client (local 3D model server)
Apache License 2.0
3 stars 6 forks source link

Docker app won't build - Dependency Versions not specified in Requirements.txt files #48

Open kcaj21 opened 2 months ago

kcaj21 commented 2 months ago

Hello, the docker container does not build successfully. I did get it all working by updating the requirements.txt files as follows:

api/requirements.txt

pydantic==1.10.13
fastapi
uvicorn
aiohttp
pymongo
motor
python-dotenv

Fastapi depends on pydantic. I had to specify an earlier version, because since pydantic v2, 'model_' is now a protected namespace.

cli/requirements.txt

click
exitstatus
requests
pydantic==1.10.13
gemmi==0.5.8
coloredlogs
jsonschema
pymongo
fastapi
pulp==2.7.0
snakemake
prettyconf
sparqlwrapper

When initially building the container, building the gemmi wheel fails, it appeared to be an issue to do with the C compiler and there have been some changes to this since gemmi V6 - see docs

Finally, snakemake depends on pulp. When running the cli command to process the model pdb files, this error occurred:

AttributeError: module 'pulp' has no attribute 'list_solvers

'list_solvers' is an addition in pulp v2.8, so i specified v2.7 in the req.txt file.

This is a general issue with snakemake itself and is an open issue on their repository.

I hope this is helpful information. If you would like to ask me anything else, please don't hesitate.