бот для благотворительного фонда “ПАМЯТЬ ПОКОЛЕНИЙ”
Важно:
- poetry ставится и запускается для каждого сервиса
bot
,expert-system
- для первого запуска проекта в контейнерах будет достаточно создать и активировать окружение в папке
expert-system
- Перейти в одну из папок сервиса, например:
cd expert-system
- Затем выполните команды:
Для Linux, macOS, Windows (WSL):
curl -sSL https://install.python-poetry.org | python3 -
Для Windows (Powershell):
(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -
В macOS и Windows сценарий установки предложит добавить папку с исполняемым файлом Poetry в переменную PATH. Сделайте это, выполнив следующую команду (не забудьте поменять {USERNAME} на имя вашего пользователя):
macOS
export PATH="/Users/{USERNAME}/.local/bin:$PATH"
Windows
$Env:Path += ";C:\Users\{USERNAME}\AppData\Roaming\Python\Scripts"; setx PATH "$Env:Path"
Проверить установку:
poetry --version
Установка автодополнений bash (опционально):
poetry completions bash >> ~/.bash_completion
-
Заполнить файлы .env согласно образцу
-
ВЫполнить команду:
docker-compose -f ./infra/docker-compose.yaml up -d
Запускаем БД:
docker-compose -f postgres-local.yaml up -d --build
Разворачиваем Django: переходим в папку expert-system:
cd expert-system
создаем файл .env и заполняем его:
Запуск виртуального окружения
🔖 Настройка окружения Poetry для PyCharm
Создание виртуального окружения:
poetry env use python3.10
Установка зависимостей (для разработки):
poetry install --with dev
Запуск оболочки и активация виртуального окружения (из папки проекта):
poetry shell
Проверка активации виртуального окружения:
poetry env list
DB_ENGINE=django.db.backends.postgresql
DB_NAME=postgres
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
DB_HOST=db
DB_PORT=5432
DJANGO_SUPERUSER_PASSWORD=pass
[email protected]
DJANGO_SUPERUSER_USERNAME=admin
выполняем команды:
python manage.py makemigrations
python manage.py migrate
python manage.py addjson
python manage.py createsuperuser
python manage.py collectstatic --no-input
python manage.py runserver