Значение параметра c python версия в docker файле со спецификацией c non- python базовое изображение - PullRequest
1 голос
/ 10 января 2020

Я хочу создать docker изображение с определенным python 3.5 на указанном c базовом изображении, которое представляет собой nvidia / cuda (9.0-base image), последнее не имеет среды python.

Причина, по которой мне нужны указанные c версии, заключается в поддержке запуска cuda10.0 python3 .5 и ag cc версии <7 для компиляции драйвера вместе в одном окне </p>

Когда я попробуйте создать среду docker (см. ниже). Я всегда получаю файлы обновления системы, которые загружают python3 .6

В первой версии, которую я запускаю (ниже), запускаются зависимости обновления системы, которые устанавливают python 3.6 Я пробовал много вариантов, чтобы избежать этого, но всегда получаю 3.6 в конечном изображении.

Приветствуются любые предложения по запуску с python3 .5

Спасибо

FROM nvidia/cuda

RUN apt-get update && apt-get install -y libsm6 libxext6 libxrender-dev python3.5 python3-pip 

COPY . /app
WORKDIR /app

RUN pip3 install -r requirements.txt
ENTRYPOINT [ "python3" ]
CMD [ "app.py" ]

Еще один вариант (ниже), который я пробовал, с помощью virtualenv и здесь Кажется, я не могу заставить python 3,5 среды

FROM nvidia/cuda

RUN apt-get update && apt-get install -y --no-install-recommends libsm6 libxext6 libxrender-dev python3.5 python3-pip python3-virtualenv

ENV VIRTUAL_ENV=/opt/venv
RUN python3 -m virtualenv --python=/usr/bin/python3 $VIRTUAL_ENV
ENV PATH="$VIRTUAL_ENV/bin:$PATH"

COPY . /app
WORKDIR /app

RUN pip3 install -r requirements.txt
ENTRYPOINT [ "python3" ]
CMD [ "app.py" ]

1 Ответ

0 голосов
/ 12 января 2020

Вы можете установить из PPA и использовать его как обычно:

FROM nvidia/cuda

RUN apt-get update && apt-get install -y --no-install-recommends software-properties-common \
    libsm6 libxext6 libxrender-dev curl \
    && rm -rf /var/lib/apt/lists/*

RUN echo "**** Installing Python ****" && \
    add-apt-repository ppa:deadsnakes/ppa &&  \
    apt-get install -y build-essential python3.5 python3.5-dev python3-pip && \
    curl -O https://bootstrap.pypa.io/get-pip.py && \
    python3.5 get-pip.py && \
    rm -rf /var/lib/apt/lists/*

COPY requirements.txt requirements.txt

RUN pip3.5 install -r requirements.txt

CMD ["python3.5", "app.py"]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...