mirror of
https://github.com/sergeyyarkov/digital-store.git
synced 2026-10-11 10:19:15 +03:00
readme
This commit is contained in:
parent
ada1bdae51
commit
30d3fe79a5
57
README.md
57
README.md
@ -30,7 +30,7 @@
|
||||
## Содержание
|
||||
- [О проекте](#О-проекте)
|
||||
- [Структура репозитория](#Структура-репозитория)
|
||||
- [Установка и найстройка скрипта](#Установка-и-найстройка-скрипта)
|
||||
- [Установка и настройка скрипта](#Установка-и-настройка-скрипта)
|
||||
- [Запуск скрипта на локальном компьютере](#Запуск-скрипта-на-локальном-компьютере)
|
||||
- [Запуск скрипта на удаленном сервере](#Запуск-скрипта-на-удаленном-сервере)
|
||||
- [Переменные среды](#Переменные-среды)
|
||||
@ -63,36 +63,70 @@
|
||||
## Структура репозитория:
|
||||
В основе всего репозитория существуют две ветки. Ветка master предназначена для разработки приложения, для выгрузки готового приложения на сервер используйте ветку production.
|
||||
|
||||
## Установка и найстройка скрипта:
|
||||
## Установка и настройка скрипта:
|
||||
|
||||
### Запуск скрипта на локальном компьютере:
|
||||
- [Установите последний релиз Digital Store](https://github.com/sergeyyarkov/digital-store/releases) из GitHub репозитория.
|
||||
- Или клонировать репозиторий `git clone https://github.com/sergeyyarkov/digital-store.git -b production`.
|
||||
- Установите [Node.js](https://nodejs.org/ru/) не ниже версии 7.6.0, в процессе установки Node.js установите Node Package Manager.
|
||||
- Установите БД MongoDB на ваш компьютер или создайте кластер на сайте [www.mongodb.com](https://www.mongodb.com/) и импортируйте туда дамп структуры БД, которые находится в корне приложения `/database_dump`.
|
||||
- Перейдите на сайт [QIWI API](https://qiwi.com/p2p-admin/transfers/api) и создайте пару ключей авторизации. Сохраните секретный ключ.
|
||||
- Если вы хотите настроить оформление формы приемов перевода, то перейдите [сюда](https://qiwi.com/p2p-admin/transfers/link) и скопируйте значение переменной `themeCode` и вставьте это значение по адресу `config/routes/payments/qiwi.payment.js`.
|
||||
- Для работоспособности интернет-магазина необходимо установить зависимости. Выполните комманду `npm install`.
|
||||
- Далле необходимо настроить переменные среды. Создайте файл `.env` в корне вашего интернет-магазина и запишите туда [значения для переменных](#Переменные-среды). Обратите внимание, что для выгрузки скрипта на production сервер, нужно устанавливать переменные среды для вашего сервера, файл `.env` создавать не нужно.
|
||||
- После этого, введите `npm run start` и перейдите по адресу `localhost:3000`, вы увидите уже рабочий интернет-магазин который запущен у вас на локальном компьютере.
|
||||
|
||||
### Запуск скрипта на удаленном сервере:
|
||||
В данном примере на удаленном сервере будет использоваться связка `Ubuntu 18.04, Nginx, MongoDB, PM2, NodeJS` + `SSL Lets Encrypt`
|
||||
|
||||
- Переходим на сайт [RUVDS.COM](https://ruvds.com/pr4435) и приобретаем VPS услугу.
|
||||
- Подключаемся к серверу по SSH и обновляем пакеты `apt-get update`.
|
||||
- Устанавливаем NodeJS:
|
||||
|
||||
```bash
|
||||
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
|
||||
|
||||
apt-get install -y nodejs <--- попросит перезагрузить сервисы - соглашаемся (YES)
|
||||
```
|
||||
Если при выполнении команд `node -v` и `npm -v` выдается версия, то идем дальше.
|
||||
- Создаем папку `/apps`, после переходим в нее и клонируем проект с github и переходим в наш магазин:
|
||||
|
||||
```bash
|
||||
mkdir apps
|
||||
|
||||
cd apps/
|
||||
|
||||
git clone https://github.com/sergeyyarkov/digital-store.git -b production
|
||||
|
||||
cd digital-store/
|
||||
```
|
||||
- Устанавливаем зависимости для интернет-магазина `npm install`.
|
||||
-
|
||||
|
||||
### Настройка платежной системы:
|
||||
В скрипте на данный момент доступна система оплаты через сервис QIWI, чтобы настроить оплату в вашем магазине следуйте следующим шагам:
|
||||
- Перейдите на сайт [QIWI API](https://qiwi.com/p2p-admin/transfers/api) и создайте пару ключей авторизации. Сохраните секретный ключ.
|
||||
- Если вы хотите настроить оформление формы приемов перевода, то перейдите [сюда](https://qiwi.com/p2p-admin/transfers/link) и скопируйте значение переменной `themeCode` и вставьте это значение по адресу `config/routes/payments/qiwi.payment.js`.
|
||||
- Секретный ключ нужно указать в поле переменной среды `QIWI_SECRET_KEY`.
|
||||
- Редирект после оплаты товара через QIWI на локальный адрес `localhost:3000` работать не будет, необходим домен.
|
||||
|
||||
### Настройка почтового сервиса:
|
||||
Для отдачи данных товара на почту покупателя после покупки товара, нужно настроить nodemailer:
|
||||
- Настройте почтовый сервис по адресу `config/nodemailer.config.js`:
|
||||
```javascript
|
||||
host: "smtp.mail.ru",
|
||||
port: 465,
|
||||
secure: true, // true для 465, false для остальных.
|
||||
```
|
||||
- Настройте систему комментарий [https://disqus.com/](Disqus.com). Добавьте свой домен на их сайт и замените embed код по адресу `dist/public/js/disqus.js`.
|
||||
- После этого, введите `npm run start` и перейдите по адресу `localhost:3000`, вы увидите уже рабочий интернет-магазин который запущен у вас на локальном компьютере.
|
||||
- Редирект после оплаты товара через QIWI на локальный адрес работать не будет, необходим домен.
|
||||
- Затем укажите переменные среды `EMAIL_LOGIN` и `EMAIL_PASSWORD`.
|
||||
|
||||
### Запуск скрипта на удаленном сервере:
|
||||
В данном примере на удаленном сервере будет использоваться связка ``Ubuntu 18.04, Nginx, MongoDB, PM2, NodeJS.``
|
||||
- ...
|
||||
### Настройка системы комментариев:
|
||||
В интернет магазине используется система комментариев [Disqus](https://disqus.com/):
|
||||
- Добавьте свой домен на их сайт и замените embed код по адресу `dist/public/js/disqus.js`.
|
||||
|
||||
## Переменные среды:
|
||||
Перменные среды нужны для работоспособности всего приложения, очень важно вписать верные данные для избежания возможных ошибок.
|
||||
### Описание переменных:
|
||||
| Переменная | Описание |
|
||||
| --------------- | -------------------------------------------------------- |
|
||||
| HOSTNAME_URI | Ваше имя хоста: `https://store-name.com`
|
||||
| DATABASE_URI | Подключение к БД MongoDB |
|
||||
| DATABASE_NAME | Имя БД |
|
||||
| EMAIL_LOGIN | Логин от почты для отправки данных покупателю |
|
||||
@ -101,7 +135,6 @@ secure: true, // true для 465, false для остальных.
|
||||
|
||||
`.env` файл:
|
||||
```bash
|
||||
HOSTNAME_URI=
|
||||
DATABASE_URI=
|
||||
DATABASE_NAME=
|
||||
QIWI_SECRET_KEY=
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user