После клонирования все команды выполняются из корневой директории проекта
-
Склонировать репозиторий
git clone https://github.com/Hoodie-Huuuuu/course_paper.git
-
Создать venv и активировать его
python3 -m venv venv source ./venv/bin/activate
-
Скачать зависимости
pip3 install -r requirements.txt
-
В отдельном терминале запустить сервер
(Вместо 5005 можно указать любой свободный порт, но тогда в файле config.py нужно поменять переменную SEGMENTER_PORT = "ваш_порт"
python3 ./segmenter_service/segmenter_service.py -p 5005
-
Запустить клиент
python3 ./app_segmentation/app.py
-
Tkinter по умолчанию установлен в python3, но на всякий можно написать так
pip3 install tk
-
docker compose build
-
docker compose up
- Для запуска клиента нужно проделать шаги 2,3 и 5 вот тут
Устанавливать лучше в виртуальное окружение, так как запаковщик стягивает все пакеты из окружения, а не только те, что используются в проекте. (Возможно есть опция командной строки, но я такой не обнаружил)
Виртуальное окружение можно поставить так
python -m venv <name_of_venv>
Затем его надо активировать
# for unix and macOS
source <name_of_venv>/bin/activate
# for windows
<name_of_venv>\Scripts\activate.bat
Теперь можно проверить какой python и pip у вас сейчас
# for MacOS
which python
which pip
Должен быть путь вида
venv_name/bin/python
venv_name/bin/pip
Теперь необходимо установить все пакеты из файла requirements.txt (убедитесь, что активирована venv)
pip install -r requirements.txt
Теперь из виртуального окружения нужно установить пакет-запаковщик
pip install pyinstaller
Эта команда сработала, но с кучей Warnings
Для windows должно быть то же самое
pyinstaller ./app_segmentation/app.py -F -y --collect-all skimage
Флаг -F запаковывает все в один бинарный файл
Флаг --collect-all ищет все подмодули и бинарные файлы указанного пакета