Где найти файловую систему контейнера Докера

Я пробую к dockerize свой сценарий Python, который называют QC.py. чтобы сделать так, я сделал a Dockerfile который похож на это:

FROM python:3

ADD qc.py /

RUN pip install numpy
RUN pip install sklearn

CMD [ "python", "./qc.py" ]

Я создал изображение с помощью этой команды:

docker build -t qc .

и затем выполненный это с помощью этой команды:

docker run qc

не используя докера сценарий работает отлично (я вижу процесс, и в конце он возвращается, "он сделан", это - то, что я добавил, чтобы удостовериться, что сценарий работает), и вывод - некоторые pdf файлы. когда я использую докера, использующего упомянутую команду и Dockerfile, тем не менее это работает, и я вижу процесс, но я не вижу файлы PDF. Я думаю, что они находятся в контейнерной файловой системе. Вы знаете, как получить доступ к файлам PDF?

0
задан 2 December 2019 в 13:01

1 ответ

Сценарий Python, выполняются в контейнере докера, и это также, где вывод Вашего сценария расположен.

Докер отображает создание

Dockerfile корректен, относительно установки необходимой среды (numpy, sklearn). Поместите сценарий в отдельный каталог, например. qc избегать коллизий с контейнерной файловой системой.

FROM python:3

ADD qc.py /qc/

RUN pip install numpy
RUN pip install sklearn

CMD [ "python", "./qc/qc.py" ]
docker build -t qc .

Добавьте объемы к рабочему контейнеру

Выполните контейнер и смонтируйте a output папка в контейнере:

docker run -it -v "$(pwd)":/qc/output qc

Команда выполнения монтирует текущий каталог к /qc/output папка в контейнере. qc.py потребности, которые будут изменены для размещения его вывода в output папка.

Затем вывод сценария помещается в локальной папке.

1
ответ дан 21 December 2019 в 23:45

Другие вопросы по тегам:

Похожие вопросы: