En

Инструкция по развертыванию CRYSTAL v1.0 на локальном ПК

25.02.2025

Характеристики локального ПК:

  • OS — Windows 11 Pro, далее — Win 11.
  • Командная строка (Windows терминал), далее — терминал.
  • MongoDB Compass v1.45.0.
  • MongoDB Community Server v8.0.4.

Структура проекта:

  • MongoDB v8.0.4.
  • Express.js v4.21.2.
  • React v19.0.0.
  • Node.js v23.6.1.
  • PNPM v10.5.2.
  • Vite v6.1.0.

Необходимо, последовательно выполнять все пункты.


1. Установка Git.


Скачайте и установите Git. Во время установки, принимайте значения по умолчанию.


2. Создание директории с проектом на локальном ПК.


Проект будет клонирован с помощью GitHub CLI, но вы можете использовать другие методы (HTTPS, SSH). Подробнее о GitHub CLI, установщик.


Работа с файлами в данной инструкции, будет происходить на диске — ‘C’.

Нажмите на клавиатуре — ‘Win+R’, затем введите в открывшимся окне:

cmd

Далее нажмите — ‘Enter’, откроется терминал, введите в нем, команду ниже:

mkdir C:\GitProjects && cd C:\GitProjects && gh repo clone CrystalSystems/crystal-v1.0

Данная команда, создаст папку ‘GitProjects’ по адресу — ‘C:\GitProjects’, и клонирует в неё — CRYSTAL v1.0, из репозитория проекта.


3. Установка базы данных MongoDB.


3.1. Установка MongoDB Community Server.


Скачайте и установите MongoDB Community Server (если у вас не открывается ссылка, используйте VPN), в поле — ‘Platform’, выберите — ‘Windows x64’, в поле — ‘Package’, выберите — ‘msi. В установщике, выберите — ‘Complete’ и нажмите — ‘Next’, завершите установку, принимая значения по умолчанию. MongoDB установится по адресу — «C:\Program Files\MongoDB», дополнительно должна установиться программа — MongoDB Compass.


3.2. Запуск сервера MongoDB.


Если ваша версия MongoDB, будет выше 8, измените номер версии в команде ниже. Уточните номер версии по адресу — ‘C:\Program Files\MongoDB\Server’.


Введите в терминал команду:

cd C:\Program Files\MongoDB\Server\8.0\bin\ && mongod.exe

4. Запуск frontend части проекта и создание файла .env.


4.1. Создание файла .env.dev с адресом локального сервера.


Введите в терминал команду:

mkdir C:\GitProjects\crystal-v1.0\frontend\env && cd C:\GitProjects\crystal-v1.0\frontend\env && echo VITE_BASE_URL=http://localhost:3000 > .env.dev

4.2. Установка PNPM.


Введите команду:

npm install -g pnpm@latest-10 && pnpm -v

4.3. Установка зависимостей.


Введите команду:

cd C:\GitProjects\crystal-v1.0\frontend && pnpm i

4.4. Запуск frontend части проекта.


Введите команду:

pnpm dev

После успешного запуска, frontend часть проекта, будет доступна по адресу:

http://localhost:8200/

5. Запуск backend части проекта и создание файлов .env.


Откройте дополнительное окно терминала.


5.1. Создание файла .env с секретным ключем JSON Web Token и Email администратора.


Введите команду, для создания папки — ‘env’:

mkdir C:\GitProjects\crystal-v1.0\backend\env && cd C:\GitProjects\crystal-v1.0\backend\env

В следующей команде, необходимо задать значение переменной — ‘JWT_SECRET_KEY’, вы можете сами ввести значение из букв и цифр, или сгенировать его в различных сервисах, например в Nano ID.

Пример, как может выглядеть JWT_SECRET_KEY — ‘IA9bVtK6yQu1hpG2TCKCrC5h0VJmRZcZlrnZ’.

echo JWT_SECRET_KEY=Секретный_ключ_JWT > .env

При регистрации пользователя с email, таким же, как в переменной — ‘CREATOR_EMAIL’, будет включен режим администратора (редактирование/удаление пользователей и постов). Измените даные в команде ниже, на нужный email.

echo CREATOR_EMAIL=email_для_режима_администратора >> .env

5.2. Создание файла .env.dev


Переменная — ‘PRODUCTION_STATUS’, в файле .env.dev, определяет в каком режиме будет запускаться сервер, в данном случае — режим разработки.


Введите команду:

echo PRODUCTION_STATUS=false > .env.dev

5.3. Установка зависимостей.


Введите команду:

cd C:\GitProjects\crystal-v1.0\backend & pnpm i

5.4. Запуск backend часть проекта.


Введите команду:

pnpm startDev

После успешного запуска, в терминале должны появиться сообщения — ‘Server is running’ и ‘DB connected’.

Перейдите в окно браузера с проектом, по адресу — http://localhost:8200/, обновите страницу, затем зарегистрируйтесь и добавьте пост.


6. MongoDB Compass


Откройте MongoDB Compass, и нажмите на кнопку — ‘Add new connection’, в поле — ‘URI’, должен быть адрес — ‘mongodb://localhost:27017’, нажмите кнопку — ‘Save & Connect’, после этого в списке бд слева, должна появиться база данных под названием — ‘crystal’, в которой будут две коллекции — ‘posts’ и ‘users’.


Код ниже, находится в директории — ‘backend\server.js’ и отвечает за подключение к локальному серверу MongoDB, а также за то, что база данных будет называться — ‘crystal’.

mongoose.connect(
    "mongodb://127.0.0.1:27017/crystal"
  )

Возможные проблемы.


Ошибка — ‘MongoError: connect ECONNREFUSED 127.0.0.1:27017’ (не запускается БД).


Это может произойти из-за того, что служба MongoDB не запущена, чтобы запустить ее, выполните следующие шаги:

нажмите ‘Win + R’, в открывшимся окне ведите — ‘Services.msc’ и нажмите — ‘Enter’.

В открывшимся окне — ‘Службы’, найдите — ‘MongoDB Server (MongoDB)’, щелкните правой кнопкой мыши и выберите — ‘Запустить’. MongoDB Server запустится, выполните команду — ‘pnpm startDev’ еще раз.

Проект тестируется в

BrowserStack

Поделиться

Копировать

BTC (Network BTC) - 1C2EWWeEXVhg93hJA9KovpkSd3Rn3BkcYm

Ethereum (Network ERC20) - 0x05037ecbd8bcd15631d780c95c3799861182e6b8

Этот сайт использует файлы cookies. Нажимая кнопку 'Принять' или продолжая пользоваться сайтом, вы соглашаетесь на использование файлов cookies.