# EasyEducation Back-end описание ## Доступ к серверу 194.67.111.61 Логин: root Пароль: |NxpiFd?4nPT Путь к проекту: /home/EasyEducation/ Путь к back-end проекта: /home/EasyEducation/backend/ Путь к admin проекта: /home/EasyEducation/admin/ ## Описание admin и back-end И admin и back-end являются микросервисами и работают с одной и той же БД. Запускаются в разных докер контейнерах. Admin: Работает с административной панелью Back-end: Работает с мобильным приложением ## Состав .env admin ``` # API keys SMS_AERO_SIGN='cQZrqSpIXgiWuxFDVN9Qr7WK21G' # Mode APP_MODE='develop' PROJECT_NAME='career_guidance' PROJECT_VERSION='0.0.1' # Database DB_HOST='localhost' DB_PORT='5432' DB_NAME='easypro' DB_PASSWORD='easypropassword' DB_USER='easypro' # SALT SALT_PASSWORD='salt' SALT_SESSION='session' # Redis REDIS_HOST='localhost' REDIS_PORT=6379 DOMAIN_NAME='194.67.111.61' DOMAIN_PROTOCOL='http://' IS_RUN_IN_KUBERNETES=false GOOGLE_JWT_HEADER="4bbede3c0dd64256143522ede29afa214bd277a3" GOOGLE_PRODUCT_ID="116477413173923135946" APP_BUNDLE_NAME="com.moonsolution.Easy" ``` ## Состав .env back-end ``` # API keys SMS_AERO_SIGN='cQZrqSpIXgiWuxFDVN9Qr7WK21G' # Mode APP_MODE='develop' PROJECT_NAME='career_guidance' PROJECT_VERSION='0.0.1' # Database DB_HOST=localhost DB_PORT=5432 DB_NAME=easypro DB_PASSWORD=easypropassword DB_USER=easypro # SALT SALT_PASSWORD='salt' SALT_SESSION='session' # Redis REDIS_HOST=localhost REDIS_PORT=6379 DOMAIN_NAME='194.67.111.61' DOMAIN_PROTOCOL='http://' IS_RUN_IN_KUBERNETES=false GOOGLE_JWT_HEADER="4bbede3c0dd64256143522ede29afa214bd277a3" GOOGLE_PRODUCT_ID="116477413173923135946" APP_BUNDLE_NAME="com.moonsolution.Easy" ``` ## Скрипты ### Admin #### dev.sh Запускает основную работу сервера ### prepare.sh Устанавливает виртуальное окружение Устанавливает модули из файла зависимости *requirements.txt* Переносит данные из *dev.env* в *.env* ### Back-end #### dev.sh Запускает основную работу сервера ### prepare.sh Устанавливает виртуальное окружение Устанавливает модули из файла зависимости *requirements.txt* Переносит данные из *dev.env* в *.env* Устанавливает миграции по файлу migrate.py #### merge.sh Запускает Merge в гит #### run_docker.sh Запускает докер, плюс работает со storage (Вот тут вопрос и мб загвоздка в ошибке) #### update_storage.sh Запускает копирование файлов дефолтных. Они нужны для теста и в основном только так и используются #### filling_for_test.py Добавляет в БД тестовые данные, плюс создает админа и модератора #### filling_robo_case.py Добавляет в БД тестовые данные по кейсам #### filling_in_k8s.py ???? Замысел не понятен, честно ## Инструкция по запуску 1. Запускаем dev.sh скрипт по пути /home/EasyEducation/backend/ 2. Запускаем dev.sh скрипт по пути /home/EasyEducation/admin/ ## Инструкция по установке 1. Устанавливаем python 2. Устанавливаем postgres, создаем пользователя с паролем и бд 3. Устанавливаем redis 4. Настраиваем redis по пути /etc/redis/redis.conf Настройки, что сейчас на сервере, которые отличаются от оригинала: ![](https://i.imgur.com/FgizR66.png) 5. Прописываем в Backend env 6. Прописываем в admin env 7. Переходим в Backend 8. Запускаем prepare.sh 9. Запускам filling_for_test.py 10. Запускаем filling_robo_case.py 11. Запускаем update_storage.sh 12. Запускаем dev.sh 13. Переходим в admin 14. Запускаем prepare.sh 15. Запускаем dev.sh