Установка из иcходников
Протестировано на Python 3.12
Перед установкой
Клонируйте репозиторий
Создайте виртуальное окружение
Установите необходимые зависимости
Настройка окружения
Установите переменные окружения
Основные
- Укажите
True
- для режима отладки, иначе оставьте пустым - Секретный ключ для вашей конкретной установки приложения.
- Хосты/доменные имена через запятую, которые являются допустимыми для данного сайта. Например:
127.0.0.1,localhost
Если используете SQLite
Данные будут храниться в каталоге
lpms/shared/db.sqlite3
Если используете PostgreSQL
Подготовьте базу данных
sudo -u postgres psql
CREATE DATABASE lmpsdb;
CREATE USER lpmsuser WITH PASSWORD 'lpmspassword';
ALTER ROLE lpmsuser SET client_encoding TO 'utf8';
ALTER ROLE lpmsuser SET default_transaction_isolation TO 'read committed';
ALTER ROLE lpmsuser SET timezone TO 'UTC';
GRANT ALL PRIVILEGES ON DATABASE lmpsdb TO lpmsuser;
\q
Добавьте настройки базы данных в переменные окружения
...
DATABASE_ENGINE=postgresql
DATABASE_NAME=lmpsdb
DATABASE_USERNAME=lpmsuser
DATABASE_PASSWORD=lpmspassword
DATABASE_HOST=localhost # (1)
DATABASE_PORT=5432 # (2)
DATABASE_OPTIONS={} # (3)
...
- При необходимости измените хост, если отличается
- При необходимости измените порт, если отличается
- При необходимости добавьте опции базы данных в формате json
GitHub
Добавьте настройки аккаунта GitHub для Авторизации пользователей (обязательно) и Автокомплита полей (опционально)
...
# обязательно:
GITHUB_OAUTH_CLIENT_ID= # (1)
GITHUB_OAUTH_SECRET= # (2)
GITHUB_OAUTH_REDIRECT_URL=http://localhost:8000/oauth/accounts/github/login/callback/ # (3)
# опционально:
GITHUB_API_TOKEN= # (4)
...
Client ID
для вашего приложения на GitHub OAuth AppsClient secrets
для вашего приложения на GitHub OAuth Apps |Authorization callback URL
для вашего приложения на GitHub OAuth Apps- ОПЦИОНАЛЬНО:
Personal access tokens (classic)
вашего аккаунта GitHub. Позволяет увеличить часовой лимит запросов от приложения к GitHub c 60 до 5000. Используется в задачах автокомплита пулл-реквестов и последующей сверки статуса ревью.
Telegram бот
Добавьте настройки Telegram бота для оправки пользователям уведомлений
Token
вашего Телеграм бота. Позволяет отправлять уведомления студентам и кураторам о изменении статусов Тасков и Ревью.
Перед запуском
Выполните миграции
Выполните сбор статических файлов
Статические данные по-умолчанию сохраняются в каталог
lpms/shared/static/
Создайте учетную запись администратора
Загрузите тестовую базу материалов обучения
Обратите внимание
В настоящий момент тестовая база данных не поставляется с файлами системы. Ее можно получить по запросу. Напишите мне, я вам постараюсь помочь.
Запустите приложение
Поздравляю, система готова к работе!
Перейдите в панель администратора, чтобы добавить пользователей и
наполнить вашу систему учебными материалами:
http://localhost:8000/admin/