PyBaMM icon indicating copy to clipboard operation
PyBaMM copied to clipboard

Migrate from `conda` to `venv` inside Docker Images

Open arjxn-py opened this issue 1 year ago • 6 comments
trafficstars

This would potentially cut down an external system dependency conda & would reduce the inconsistency of environments across different OS for IDAKLU solver images.

arjxn-py avatar Jan 06 '24 05:01 arjxn-py

Labelling it easy at the moment but since the base image would be changed as well, the complexity might reach medium as well.

arjxn-py avatar Jan 06 '24 05:01 arjxn-py

It might reach medium, the newer choice of base image should be GLIBC compliant. If it's possible, we can use the checked out files from the repository to build the image instead of cloning PyBaMM inside it.

agriyakhetarpal avatar Jan 06 '24 09:01 agriyakhetarpal

I was thinking of taking this up if you don't mind that, @arjxn-py – I have been been wanting to learn more things about Docker recently

agriyakhetarpal avatar Jan 16 '24 12:01 agriyakhetarpal

Yes, why not. Feel free to take this up 💯

arjxn-py avatar Jan 16 '24 12:01 arjxn-py

Can I take this issue if it's not being worked on by any chance?

santacodes avatar Feb 25 '24 13:02 santacodes

Sure, @santacodes – I won't be able to work on this realistically anytime soon, feel free to take this up. Some guidelines are:

  1. We need this image for both amd64 and aarch64 platforms.
  2. The image needs to be compliant with the PEP599 manylinux2014 platform tag, i.e., the same one as what we publish PyPI wheels for – please view the document here: https://peps.python.org/pep-0599/. This means that it should rely on a GLIBC version no later than 2.17.
  3. We should target #3666 to reduce the number of images and include one image with the latest tag with all solvers (the current pybamm/pybamm:latest image includes no compiled solvers). Feel free to close both issues in one PR in order to reduce merge conflicts.

agriyakhetarpal avatar Feb 25 '24 13:02 agriyakhetarpal