Оновлена інструкція
This commit is contained in:
110
README.md
110
README.md
@@ -7,19 +7,96 @@
|
|||||||
## 🔗 Зміст
|
## 🔗 Зміст
|
||||||
|
|
||||||
1. [Початок](#1-початок)
|
1. [Початок](#1-початок)
|
||||||
2. [Встановлення Docker](#2-встановлення-docker)
|
1.1. [Створення Telegram бота](#11-створення-telegram-бота)
|
||||||
3. [Встановлення Docker Compose](#3-встановлення-docker-compose)
|
1.2. [Генерація VAPID ключів](#12-генерація-vapid-ключів)
|
||||||
4. [Запуск Sheep-Service](#4-запуск-sheep-service)
|
2. [Налаштування сервера](#2-налаштування-сервера)
|
||||||
5. [Встановлення NGINX](#5-встановлення-nginx)
|
3. [Встановлення Docker](#3-встановлення-docker)
|
||||||
6. [Налаштування IP адреси CloudFlare](#6-налаштування-ip-адреси-cloudflare)
|
4. [Встановлення Docker Compose](#4-встановлення-docker-compose)
|
||||||
7. [Налаштування NGINX для веб](#7-налаштування-nginx-для-веб)
|
5. [Запуск Sheep-Service](#5-запуск-sheep-service)
|
||||||
8. [Встановлення Certbot](#8-встановлення-certbot)
|
6. [Встановлення NGINX](#6-встановлення-nginx)
|
||||||
9. [CRONTAB Backup](#9-crontab-backup)
|
7. [Налаштування IP адреси CloudFlare](#7-настройка-ip-адреси-cloudflare)
|
||||||
|
8. [Налаштування NGINX для веб](#8-настройка-nginx-для-веб)
|
||||||
|
9. [Встановлення Certbot](#9-встановлення-certbot)
|
||||||
|
10. [CRONTAB Backup](#10-crontab-backup)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 1. Початок
|
## 1. Початок
|
||||||
|
|
||||||
|
1. Скопіюйте всі файли проекту на сервер.
|
||||||
|
2. Створіть файл `.env` у корені проекту:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
DOMAIN=sheep-service.com
|
||||||
|
|
||||||
|
HTTP_PORT=4000
|
||||||
|
HTTPS_PORT=4001
|
||||||
|
|
||||||
|
DB_PATH=/home/username/webapps/sheep-service.com/
|
||||||
|
CARDS_PATH=/home/username/webapps/sheep-service.com/cards
|
||||||
|
MAP_PATH=/home/username/webapps/sheep-service.com/map
|
||||||
|
|
||||||
|
TELEGRAM_TOKEN=<токен_бота>
|
||||||
|
CHAT_ID=<тут_твій_chat_id>
|
||||||
|
|
||||||
|
VAPID_PUBLIC_KEY=<тут_твій_public_key>
|
||||||
|
VAPID_PRIVATE_KEY=<тут_твій_private_key>
|
||||||
|
```
|
||||||
|
|
||||||
|
> **Примітка:** Замініть `username` на ім’я користувача сервера, а `sheep-service.com` на своє доменне ім’я.
|
||||||
|
|
||||||
|
3. Відредагуйте файл `web/config.js` під ваші змінні `.env`.
|
||||||
|
|
||||||
|
|
||||||
|
## 1.1 Створення Telegram бота
|
||||||
|
|
||||||
|
1. Відкрийте Telegram і знайдіть **[@BotFather](https://t.me/BotFather)**.
|
||||||
|
2. Відправте команду `/newbot` та слідуйте інструкціям:
|
||||||
|
- Назва бота: `SheepServiceBot`
|
||||||
|
- Username бота: `sheep_service_bot` (обов’язково закінчується на `bot`)
|
||||||
|
3. Скопіюйте **API токен** та додайте його у `.env`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
TELEGRAM_TOKEN=<токен_бота>
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Щоб отримати `CHAT_ID`:
|
||||||
|
- Відправте боту `/start`.
|
||||||
|
- Відкрийте URL у браузері:
|
||||||
|
|
||||||
|
```
|
||||||
|
https://api.telegram.org/bot<ТВОЙ_ТОКЕН>/getUpdates
|
||||||
|
```
|
||||||
|
|
||||||
|
- Знайдіть `chat.id` у відповіді JSON і додайте у `.env`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
CHAT_ID=<тут_твій_chat_id>
|
||||||
|
```
|
||||||
|
|
||||||
|
## 1.2 Генерація VAPID ключів
|
||||||
|
|
||||||
|
1. Встановіть `web-push`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm install web-push -g
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Згенеруйте ключі:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
web-push generate-vapid-keys
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Скопіюйте отримані ключі у `.env`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
VAPID_PUBLIC_KEY=<тут_твій_public_key>
|
||||||
|
VAPID_PRIVATE_KEY=<тут_твій_private_key>
|
||||||
|
```
|
||||||
|
|
||||||
|
## 2. Налаштування сервера
|
||||||
|
|
||||||
Оновлення системи та встановлення необхідних пакетів:
|
Оновлення системи та встановлення необхідних пакетів:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -31,7 +108,7 @@ sudo apt install -y curl gnupg2 ca-certificates lsb-release zip
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 2. Встановлення Docker
|
## 3. Встановлення Docker
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo apt install -y docker.io
|
sudo apt install -y docker.io
|
||||||
@@ -45,7 +122,7 @@ sudo usermod -aG docker $USER
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 3. Встановлення Docker Compose
|
## 4. Встановлення Docker Compose
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo apt install -y docker-compose
|
sudo apt install -y docker-compose
|
||||||
@@ -56,7 +133,7 @@ docker-compose --version
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 4. Запуск Sheep-Service
|
## 5. Запуск Sheep-Service
|
||||||
|
|
||||||
### Перехід в директорію проекту
|
### Перехід в директорію проекту
|
||||||
|
|
||||||
@@ -74,7 +151,7 @@ docker-compose -p sheep-service up --build -d --scale api=5 --scale ws=5 --scale
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 5. Встановлення NGINX
|
## 6. Встановлення NGINX
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo apt install nginx
|
sudo apt install nginx
|
||||||
@@ -98,7 +175,7 @@ client_max_body_size 20M;
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 6. Налаштування IP адреси CloudFlare
|
## 7. Налаштування IP адреси CloudFlare
|
||||||
|
|
||||||
```nginx
|
```nginx
|
||||||
set_real_ip_from 103.21.244.0/22;
|
set_real_ip_from 103.21.244.0/22;
|
||||||
@@ -130,7 +207,7 @@ real_ip_header X-Forwarded-For;
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 7. Налаштування NGINX для веб
|
## 8. Налаштування NGINX для веб
|
||||||
|
|
||||||
### Створення файлу конфігурації сайту
|
### Створення файлу конфігурації сайту
|
||||||
|
|
||||||
@@ -169,7 +246,7 @@ sudo systemctl reload nginx
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 8. Встановлення Certbot
|
## 9. Встановлення Certbot
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo python3 -m venv /opt/certbot/
|
sudo python3 -m venv /opt/certbot/
|
||||||
@@ -190,7 +267,7 @@ sudo /opt/certbot/bin/pip install --upgrade certbot certbot-nginx
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 9. CRONTAB Backup
|
## 10. CRONTAB Backup
|
||||||
|
|
||||||
Редагування cron для резервного копіювання бази даних:
|
Редагування cron для резервного копіювання бази даних:
|
||||||
|
|
||||||
@@ -214,4 +291,3 @@ sudo pip3 install python-dotenv
|
|||||||
```
|
```
|
||||||
|
|
||||||
💡 **Порада:** Переконайтесь, що всі шляхи до директорій відповідають вашому користувачу та що всі сервіси працюють після перезавантаження Docker або сервера.
|
💡 **Порада:** Переконайтесь, що всі шляхи до директорій відповідають вашому користувачу та що всі сервіси працюють після перезавантаження Docker або сервера.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user