激活d中的conda环境

2024-05-17 09:02:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要在docker中激活环境并在此环境中运行命令。 我创建了环境,但随后尝试激活此环境并按以下方式运行命令:

CMD [ "source activate mro_env && ipython kernel install --user --name=mro_env" ]

但是当我运行docker时,我得到了一个错误:

[FATAL tini (8)] exec source activate mro_env && ipython kernel install 
--user --name=mro_env failed: No such file or directory

这是整个Dockerfile:

FROM continuumio/miniconda3

ADD /src/mro_env.yml /src/mro_env.yml
RUN conda env create -f /src/mro_env.yml

# Pull the environment name out of the mro_env.yml
RUN echo "source activate $(head -1 /src/mro_env.yml | cut -d' ' -f2)" > ~/.bashrc
ENV PATH /opt/conda/envs/$(head -1 /src/mro_env.yml | cut -d' ' -f2)/bin:$PATH

CMD [ "source activate mro_env && ipython kernel install --user --name=mro_env" ]

Tags: installdockername命令srcenvcmdsource
1条回答
网友
1楼 · 发布于 2024-05-17 09:02:58

您可以设置CONDA_DEFAULT_ENV

像这样:

FROM continuumio/miniconda3

ARG conda_env=mro_env

ADD /src/environment.yml /src/environment.yml
RUN conda env create -f /src/environment.yml

ENV PATH /opt/conda/envs/$conda_env/bin:$PATH
ENV CONDA_DEFAULT_ENV $conda_env

CMD [ "python", "test.py" ]

更新:

最好使用激活。为我工作:

FROM continuumio/miniconda3

ADD /src/environment.yml /src/environment.yml

RUN conda env create -f /src/environment.yml
ENV PATH /opt/conda/envs/mro_env/bin:$PATH
RUN /bin/bash -c "source activate mro_env"

CMD [ "python", "test.py" ]

相关问题 更多 >