Я выполняю докеризацию фляги на машине с windows10. Я получаю сообщение об ошибке ниже после запуска докера
RuntimeError: невозможно кэшировать функцию '__jaccard': нет локатора для файла '/usr/local/lib/python3.7/site-packages/librosa/util/matching.py'
Приложение колбы нормально работает на моем компьютере.
Я ссылался на похожий пост: Проблема с кэшированием numba: невозможно кэшировать функцию / нет локатора для файла
Я добавил права доступа пользователя для приложения в Dockerfile.
1. Dockerfile
ИЗ питона: 3.7.3
RUN useradd admin
КОПИЯ. / app
WORKDIR / app
RUN pip install -r "needs.txt"
RUN chown -R admin: admin / app
RUN chmod 755 / app
USER admin
ENTRYPOINT ["python"]
CMD ["app.py"]
2. requirements.txt
колба
tensorflow
flask_cors
UUID
librosa
Numba
pysoundfile
NumPy
cffi
Запросы
волна
h5py
pydub
Werkzeug
3. Журнал ошибок:
Traceback (последний вызов был последним):
Файл "app.py", строка 6, в
импорт либроса
Файл "/usr/local/lib/python3.7/site-packages/librosa/init.py", строка 13, в
от . ядро импорта
Файл "/usr/local/lib/python3.7/site-packages/librosa/core/init.py", строка 114, в
из .time_frequency import * # pylint: disable = wildcard-import
Файл "/usr/local/lib/python3.7/site-packages/librosa/core/time_frequency.py", строка 10, в
из ..util.exceptions import ParameterError
Файл "/usr/local/lib/python3.7/site-packages/librosa/util/init.py", строка 70, в
из .matching import * # pylint: disable = wildcard-import
Файл "/usr/local/lib/python3.7/site-packages/librosa/util/matching.py", строка 16, в
@ numba.jit (nopython = True, кэш = True)
Файл "/usr/local/lib/python3.7/site-packages/numba/decorators.py", строка 179, в оболочке
disp.enable_caching ()
Файл "/usr/local/lib/python3.7/site-packages/numba/dispatcher.py", строка 571, в enable_caching
self._cache = FunctionCache (self.py_func)
Файл "/usr/local/lib/python3.7/site-packages/numba/caching.py", строка 614, в init
self._impl = self._impl_class (py_func)
Файл "/usr/local/lib/python3.7/site-packages/numba/caching.py", строка 349, в init
"для файла% r"% (qualname, source_path))
RuntimeError: невозможно кэшировать функцию '__jaccard': нет локатора для файла '/usr/local/lib/python3.7/site-packages/librosa/util/matching.py'