Контейнер Singularity не находит файлы после преобразования из докераPython

Программы на Python
Ответить
Anonymous
 Контейнер Singularity не находит файлы после преобразования из докера

Сообщение Anonymous »

У меня есть такой образ Docker

Код: Выделить всё

FROM nvidia/cuda:12.6.3-runtime-ubuntu20.04
#Set environment variables to avoid some warnings during apt-get install
ENV DEBIAN_FRONTEND=noninteractive
#Install necessary dependencies
RUN apt-get update && \
apt-get install -y \
python3-pip \
python3-dev \
software-properties-common \
curl \
&& rm -rf /var/lib/apt/lists/*
#Add deadsnakes PPA and install Python 3.11 (stable for Ubuntu 20.04)
RUN add-apt-repository ppa:deadsnakes/ppa && \
apt-get update && \
apt-get install -y \
python3.11 \
python3.11-dev \
python3.11-venv \
python3.11-distutils && \
rm -rf /var/lib/apt/lists/*
#Install pip for Python 3.12
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && \
python3.11 get-pip.py && \
rm get-pip.py
#Ensure that `python3` points to Python 3.12
RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 1
#Set working directory
WORKDIR /Python_Development
#Copy the requirements file and install dependencies
COPY requirements.txt ./
RUN python3.11 -m pip install --no-cache-dir -r requirements.txt
#Map drive
VOLUME ["/mnt/data"]
#Copy the application files into the container

COPY DLApplication/ ./DLApplication

CMD ["python3", "DLApplication/DLEntryPointSegmentation.py"]
Я копирую образ cuda с nvidia, устанавливаю Python, свои требования, а затем добавляю нужный мне каталог. Внутри этого каталога находится DLEntrypointSegmentation.py
Этот скрипт мне нужно запустить.
Когда я создаю этот образ и запускаю его следующим образом

docker run -v F:/mnt/data:/mnt/data -e CONFIG_JSON="JSON ИДЕТ ЗДЕСЬ С ESCAPED " " сегментацией: последняя версия
Я привязываю диск и предоставляю JSON указанному скрипту.
Контейнер запускается и работает как задумано.
Затем мне нужно преобразовать это изображение докера в изображение сингулярности.
Я сохраняю изображение докера с помощью

docker save -o сегментацииV3.tar: последняя
Затем я преобразую это в изображение сингулярности с
singularity build /path/segmentationV3.sif docker-archive:///path/segmentationV2.tar

это работает, однако каждый раз Я пытаюсь запустить образ сингулярности, но он, похоже, не находит >DLEntrypointSegmentation.py
Я заметил, что после запуска его с помощью

singularity exec /path/segmentationV3.sif ls

, работающий образ по-прежнему считает, что он находится внутри того места, где я выполнил команду в cmd , однако файл DLEntrypointSegmentation.py
должен находиться внутри изображения.
путь должен выглядеть примерно так

/path/IMAGE/DLApplication/DLEntrypointSegmentation.py

, но это похоже на

/path/ -> я запустил cmd здесь

Может кто-нибудь сказать мне, в чем заключается моя ошибка/где ее исправить?
Я новичок в сингулярности и немного затрудняюсь с поиском это
Спасибо

Подробнее здесь: https://stackoverflow.com/questions/793 ... rom-docker
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»