[英]How to install packages with miniconda in Dockerfile?
我有一個簡單的 Dockerfile:
FROM ubuntu:18.04
RUN apt-get update
RUN apt-get install -y wget && rm -rf /var/lib/apt/lists/*
RUN wget \
https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh \
&& mkdir /root/.conda \
&& bash Miniconda3-latest-Linux-x86_64.sh -b \
&& rm -f Miniconda3-latest-Linux-x86_64.sh \
&& echo PATH="/root/miniconda3/bin":$PATH >> .bashrc \
&& exec bash \
&& conda --version
RUN conda --version
而且它無法建造。 在最后一步,我得到/bin/sh: 1: conda: not found
....
conda --version
的第一次出現並沒有引發錯誤,這讓我想知道這是一個PATH
問題嗎?
我想在這個 Dockerfile 中有另一個RUN
條目,我將在其中安裝帶有 conda install 的軟件包conda install...
最后,我想要CMD ["bash", "test.py"]
條目,以便在docker run
此映像時,它會自動運行一個簡單的 python 腳本,其中安裝了導入所有庫的 conda 腳本。 也許還有一個CMD ["bash", "test.sh"]
腳本可以測試是否確實安裝了 conda 和 python 解釋器。
這是一個簡化的例子,會有很多軟件所以我不想改變基礎鏡像。
這將使用 ARG 和 ENV:
FROM ubuntu:18.04
ENV PATH="/root/miniconda3/bin:${PATH}"
ARG PATH="/root/miniconda3/bin:${PATH}"
RUN apt-get update
RUN apt-get install -y wget && rm -rf /var/lib/apt/lists/*
RUN wget \
https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh \
&& mkdir /root/.conda \
&& bash Miniconda3-latest-Linux-x86_64.sh -b \
&& rm -f Miniconda3-latest-Linux-x86_64.sh
RUN conda --version
@soren - 您必須運行$CONDA_BIN/conda init
。 重新啟動一個新的 shell。 那么conda activate
應該可以工作。 conda init 更新您的登錄配置文件以在登錄時設置 conda(或采購,say.bashrc)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.