-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile-base
47 lines (44 loc) · 1.52 KB
/
Dockerfile-base
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
FROM python:3.10-slim-bookworm
# install Python requirements for assimulo
RUN pip install "cython<1.0" numpy scipy matplotlib
# install SUNDIALS and Assimulo
ARG ASSIMULO_VERSION=3.4.3
RUN apt-get update -y \
&& apt-get install -y --no-install-recommends \
libsundials-dev \
g++ \
libblas-dev \
liblapack-dev \
git \
\
&& pip -V \
&& pip install --install-option="--optimize=1" \
--install-option="--extra-fortran-link-flags=-shared" \
--install-option="--sundials-home=/usr" \
--install-option="--blas-home=/usr/lib/x86_64-linux-gnu" \
--install-option="--lapack-home=/usr" \
--install-option="--extra-fortran-compile-flags=-fallow-argument-mismatch" \
--install-option="--extra-c-flags=-DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION" \
git+https://github.com/modelon-community/Assimulo.git@Assimulo-${ASSIMULO_VERSION} \
\
&& apt-get remove -y \
g++ \
libblas-dev \
liblapack-dev \
git \
\
&& apt-get autoremove -y \
&& apt-get install -y --no-install-recommends \
libsundials-arkode5 \
libsundials-cvode6 \
libsundials-cvodes6 \
libsundials-ida6 \
libsundials-idas5 \
libsundials-kinsol6 \
libsundials-nvecserial6 \
\
&& rm -rf /var/lib/apt/lists
# fonts for matplotlib
RUN apt-get update -y \
&& apt-get install -y --no-install-recommends libfreetype6 \
&& rm -rf /var/lib/apt/lists/*