Редактирование пакета Django внутри контейнера docker
В моем докер-файле Django я использую файл pip install -r requirements.txt. С его помощью я загружаю определенный пакет, но после установки этот пакет нужно отредактировать. На локальном компьютере я могу просто зайти на site-packages и отредактировать его, но мне нужно знать, где я могу найти его внутри контейнера? Или это вообще возможно? Я довольно новичок в docker, так что, пожалуйста, помогите мне.
Я не уверен, чего вы пытаетесь достичь, но это определенно выполнимо.
Метод 1: Скопируйте измененный пакет и импортируйте его напрямую.
Например: если numpy
- это библиотека, которую вам нужно изменить, скопируйте весь каталог numpy
в ваш проект и внесите изменения. Импортируйте это вместо официальной библиотеки.
Обязательно скопируйте эту папку и в ваш контейнер.
Удалите numpy
из файла требований, это необходимо для того, чтобы docker не переустанавливал исходный numpy
.
Таким образом, вы можете легко распространять свой проект.
Метод 2 ( НЕ РЕКОМЕНДУЕТСЯ): Измените его непосредственно внутри контейнера.
Используйте docker exec для запуска nano
, если он установлен.
Другой простой способ сделать это - использовать расширение docker в VSCode или предпочитаемой вами IDE.
Недостатком является то, что вы не можете легко распространять это.
Если это библиотека с открытым исходным кодом, вы также можете предложить это изменение. Хотя это будет медленный процесс утверждения.