Streamlit и ContainDS ImportError: не удалось инициализировать: неверный исполняемый файл git

Я пытаюсь запустить простое приложение Streamlit, используя ContainDS (https://containds.com/) на Macbook. Цель состоит в том, чтобы экспортировать файл и использовать ContainDS, чтобы легко поделиться панелью мониторинга с клиентом.

Папка проекта, расположенная на моем рабочем столе, имеет следующую структуру:

project_1234:
         ---- streamlit_app.py
         ---- Additional_scripts:
                               ---- ... .py

Однако, как только я запускаю Docker и ContainDS, создаю экземпляр изображения с потоковой подсветкой, указываю папку project_1234 и нажимаю кнопку «Создать», отображается следующая ошибка:

Traceback (most recent call last):
  File "/opt/conda/lib/python3.8/site-packages/git/__init__.py", line 83, in <module>
    refresh()
  File "/opt/conda/lib/python3.8/site-packages/git/__init__.py", line 73, in refresh
    if not Git.refresh(path=path):
...

ImportError:
Bad git executable.

The git executable must be specified in one of the following ways:   
- be included in your $PATH   
- be set via $GIT_PYTHON_GIT_EXECUTABLE   
- explicitly set via git.refresh()

Более того, даже если я запускаю простой скрипт Streamlit intro.py, выдается та же ошибка;

Однако, если запустить приложение из Терминала, из папки проекта, все будет работать нормально:

streamlit run streamlit_app.py

Для справки: в своей ОС я использую Python 3.7.9 на основе anaconda.

Как я могу решить эту проблему и поделиться приложением с моим клиентом?


person Alessandro Ceccarelli    schedule 16.10.2020    source источник


Ответы (2)


Похоже, что последняя версия Streamlit могла случайно добавить git в качестве зависимости. Установка git решает эту проблему.

person Randy Zwitch    schedule 16.10.2020
comment
Как бы вы это установили и настроили? Не могли бы вы дать руководство по коду? Спасибо - person Alessandro Ceccarelli; 16.10.2020
comment
Когда вы устанавливаете git, он сам настраивается. Вот инструкции для основных операционных систем, из вашей ошибки я полагаю, вам нужны инструкции для Linux git-scm.com/book/en/v2/Getting-Started-Installing-Git - person Randy Zwitch; 16.10.2020

Сегодня утром я попытался воссоздать новый контейнер - на основе той же папки и без предварительного запуска Anaconda или Spyder - и теперь он успешно работает.

Я предполагаю, что между этими двумя (ContainDS / Docker и Anaconda / Spyder) может быть какой-то конфликт.

person Alessandro Ceccarelli    schedule 17.10.2020