Активируйте conda env и запустите требования к установке pip в Dockfile

#docker #anaconda #dockerfile #conda #docker-build

#docker #anaconda #dockerfile #conda #docker-сборка

Вопрос:

Я могу успешно создать свою виртуальную среду dev1 , но я не могу активировать ее и переключиться на in во время сборки Docker.

Все, что я хочу, это переключить venv и установить мои зависимости requirements.txt .

Мой код:

 WORKDIR /APP
ADD . /APP
ARG CONDA_VENV=dev1
RUN conda create -y --name ${CONDA_VENV} python=3.7
RUN conda activate ${CONDA_VENV}
RUN pip install -r requirements.txt
 

Ошибка:

 CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
To initialize your shell, run

    $ conda init <SHELL_NAME>

Currently supported shells are:
  - bash
  - fish
  - tcsh
  - xonsh
  - zsh
  - powershell

See 'conda init --help' for more information and options.

IMPORTANT: You may need to close and restart your shell after running 'conda init'.


The command '/bin/sh -c conda activate ${CONDA_VENV}' returned a non-zero code: 1
 

Комментарии:

1. Образ Docker сам по себе является изолирующей средой. Безопасно (и обычно) pip install напрямую обращаться к «системному» Python; вам не нужна виртуальная среда поверх этого.

2. Я согласен с @DavidMaze — conda и ее производные не нужны в docker.