求包含Python 3.9及以上版本的SCIP Docker镜像
支持Python 3.9+的SCIP Docker镜像方案
方案一:自定义构建基于Python 3.9+的SCIP镜像
你可以通过编写Dockerfile,基于官方Python镜像(3.9及以上版本)构建包含SCIP和Pyomo的镜像,步骤如下:
- 创建名为
Dockerfile的文件,内容如下:
# 使用Python 3.10 slim镜像作为基础 FROM python:3.10-slim # 安装系统依赖(SCIP编译或运行所需) RUN apt-get update && apt-get install -y --no-install-recommends \ gcc \ g++ \ make \ wget \ && rm -rf /var/lib/apt/lists/* # 安装Pyomo和SCIP RUN pip install --no-cache-dir pyomo scipopt # 设置工作目录 WORKDIR /app # 复制你的Pyomo代码到容器内(可选,也可以运行时挂载) COPY your_model.py . # 默认命令(可选) CMD ["python", "your_model.py"]
- 构建镜像:
docker build -t scip-py310 .
- 运行容器测试代码:
如果代码文件在本地当前目录,可通过挂载目录运行:
docker run -v $(pwd):/app scip-py310 python your_model.py
方案二:基于Miniconda构建镜像
如果你偏好conda环境,也可以用Miniconda基础镜像:
- 创建
Dockerfile:
FROM continuumio/miniconda3 # 创建并激活Python 3.10环境 RUN conda create -n scip-env python=3.10 -y RUN echo "source activate scip-env" > ~/.bashrc ENV PATH /opt/conda/envs/scip-env/bin:$PATH # 安装Pyomo和SCIP RUN conda install -c conda-forge pyomo scip -y WORKDIR /app
- 构建并运行的命令和方案一类似,只需调整镜像名称即可。
验证代码运行
将你提供的代码保存为test_model.py,运行容器后执行:
python test_model.py
预期输出为0.0,说明SCIP solver正常工作。
内容的提问来源于stack exchange,提问作者Salman
相关产品推荐
相关产品推荐

