Как установить пакет conda из пользовательского файлового канала в файле Docker?

Привет, у меня есть собственный канал conda, что-то вроде file://path_to_channel, и я хочу установить пакеты из этого канала при создании образов докеров, например:

...
RUN conda config add -channel file://...
RUN conda install mypackage
...

Проблема здесь в том, что этот путь к файлу, кажется, не подключен к образу докера во время сборки.

Мой вопрос заключается в том, что, кроме копирования всего канала в образ докера, есть ли другой способ установить пакет python из пользовательского канала на основе файлов в Dockerfile во время сборки.


Мой ответ

Ответ ниже правильный, докер теперь поддерживает монтирование во время выполнения. Но я не пошел по этому пути, так как мы на более старом докере.

Чтобы обойти это, я настроил http-сервер для обслуживания файлов. Это очень просто, если вы используете node или python.


person Boyu Fang    schedule 06.02.2019    source источник


Ответы (1)


Я думаю, что в последнее время это возможно с помощью команды RUN --mount. (Это может быть даже экспериментальным.) Вы можете найти несколько примеров здесь.

Альтернативой является обслуживание файлов с помощью локального веб-сервера.

person jcragun    schedule 06.02.2019
comment
Не пошли по этому пути, так как мы используем более старый докер, который не поддерживает монтирование во время выполнения. Поэтому вместо этого я настроил http-сервер. Но все же это хороший ответ. - person Boyu Fang; 26.02.2019