我正在尝试创建一个用于深度学习的容器,其中包含一个包列表,并同时支持Python2和Python3。我创建了一个Dockerfile,该文件从nvidia/cuda:10.1-cudnn7-devel-centos7中提取,然后安装Miniconda,然后创建Python2和3环境,如下所示:
RUN conda env create -f py2_env.yaml
RUN conda env create -f py3_env.yaml环境文件如下所示:
name: py3
channels:
- conda-forge
- defaults
dependencies:
- _libgcc_mutex=0.1=main
- _tflow_select=2.1.0=gpu
- lots_of_other_packages
- pip:
- affine==2.3.0
- more_packages_here
prefix: /opt/conda/envs/py3我遇到的问题是,当我创建容器时,我是从没有所有包的基础环境开始的,所以我从python 3环境开始,而不是从包含所有包的环境开始。我必须通过conda activate py3来获取它们。我想删除这一步。我希望将我的所有软件包直接安装到基本环境中,或者从激活的py3环境开始。我尝试将这个命令添加到我的Dockerfile:RUN /bin/bash -c "conda init bash && source /root/.bashrc && conda activate py3中,但它仍然在基本环境中启动。
发布于 2019-12-04 03:36:18
将此行添加到docker文件的末尾
CMD ["/bin/sh " "conda init bash && source /root/.bashrc && conda activate py3"]https://stackoverflow.com/questions/59163799
复制相似问题