#python #docker
#python #docker
Вопрос:
Попытка создать образ docker с помощью Docker SDK для Python (https://docker-py.readthedocs.io/en/stable/images.html ) Мне интересно, что такое fileobj и где это описано в документации
Моя цель — создать образ docker на основе Dockerfile с именем, отличным от имени файла по умолчанию
Ответ №1:
Это стандартный файловый объект Python; вы можете получить его со встроенной open()
функцией. Как это обычно бывает с Python, вы также можете передать «файлоподобный» объект, который поддерживает read()
метод; нет никаких проверок того, что то, что вы передаете, на самом деле является файлом.
Обратите внимание, что вы мало что не можете сделать с помощью Docker CLI, и особенно система создания образов довольно фиксированная и автономная. С другой стороны, Docker API является сложным, и доступ к нему дает вам неограниченный root-доступ к хосту: ошибки могут поставить под угрозу ваш хост. Для того, что вы описываете, API почти идентичен docker build
команде, и я бы еще раз посмотрел, не можете ли вы использовать это напрямую; маловероятно, что вы сможете обойти какие-либо конкретные ограничения, с которыми вы сталкиваетесь.
Комментарии:
1. Я обязательно рассмотрю возможность использования CLI, возможно, оберну его вокруг простых функций с использованием python — спасибо!