ugr-sail / sinergym

Gym environment for building simulation and control using reinforcement learning
https://ugr-sail.github.io/sinergym/
MIT License
127 stars 34 forks source link

[IMPROVEMENT]: Try to improve Docker SO with Alpine #311

Closed AlejandroCN7 closed 1 year ago

AlejandroCN7 commented 1 year ago

Improvement 🔧

Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general. Maybe Energyplus or other dependencies don't run correctly in this SO, but it is worth to create a branch and test to see if we can change the image based on Ubuntu 22.04 LTS

Checklist

:pencil: Please, don't forget to include more labels besides enhancement if it is necessary.

AlejandroCN7 commented 1 year ago

I am trying with an image called python:3.10.11-alpine. Unfortunately, it seems that Alpine has problems with some python modules which depend on C extensions (such as numpy or torch). I will try to do with other light SO's based on Ubuntu or Debian

AlejandroCN7 commented 1 year ago

As is mentioned in v2.4.1, we have several problems with Alpine or slim Debian OS with python v3.10.11. So this proposal is dismissed for now. This issue will be closed with this message temporally.

Alpine has several problems with modules which depend on C extensions, such as numpy and torch. Debian bullseye slim image has problems with python 3.10.11 (we have currently 3.10.6) with cchardet module. cchardet is not an explicit dependency of Sinergym, but it is a dependency of pytype and opyplus.

There are already libraries that try to fill the gap left by the abandonment of the cchardet project. The one that I have seen more updated and handy is charset_normalizer. The problem is that since it is a dependency of our dependencies, rather than a direct dependency, I can't replace it to fix it.