I'm trying to install pyscipopt in dockerfile, but I got some errors when installing required packages for SCIP. This is my Dockerfile:
FROM python:3.8-slim
WORKDIR /src
RUN apt-get update -y
RUN apt-get install -y \
gcc g++ gfortran liblapack3 libtbb2 libcliquer1 \
libopenblas-dev libgsl23 libboost-program-options1.65.1 wget
RUN wget https://scipopt.org/download/release/SCIPOptSuite-7.0.3-Linux-ubuntu.sh
ENV SCIPOPTDIR /src/scipoptsuite
RUN mkdir $SCIPOPTDIR
RUN sh SCIPOptSuite-7.0.3-Linux-ubuntu.sh --skip-license --prefix=$SCIPOPTDIR \
&& rm SCIPOptSuite-7.0.3-Linux-ubuntu.sh
RUN pip3 install pyscipopt==3.5.0
And the error message is:
#0 1.191 Package libgsl23 is not available, but is referred to by another package.
#0 1.191 This may mean that the package is missing, has been obsoleted, or
#0 1.191 is only available from another source
#0 1.191 However the following packages replace it:
#0 1.191 libgslcblas0
#0 1.191
#0 1.267 E: Package 'libgsl23' has no installation candidate
#0 1.267 E: Unable to locate package libboost-program-options1.65.1
#0 1.267 E: Couldn't find any package by glob 'libboost-program-options1.65.1'
#0 1.267 E: Couldn't find any package by regex 'libboost-program-options1.65.1'
------
Dockerfile:36
--------------------
35 | RUN apt-get update -y
36 | >>> RUN apt-get install -y \
37 | >>> gcc g++ gfortran liblapack3 libtbb2 libcliquer1 \
38 | >>> libopenblas-dev libgsl23 libboost-program-options1.65.1 wget
39 |
--------------------
ERROR: failed to solve: process "/bin/sh -c apt-get install -y gcc g++ gfortran liblapack3 libtbb2 libcliquer1 libopenblas-dev libgsl23 libboost-program-options1.65.1 wget" did not complete successfully: exit code: 100
How can I fix these errors or is there another way to use pyscipopt with docker?
Thank you!