@@ -0,0 +1,78 @@
|
|||||||
|
# monitoring-server
|
||||||
|
|
||||||
|
Параллельный HTTP прокси-сервер с поддержкой стриминга через Socket.io.
|
||||||
|
|
||||||
|
[](https://dron.sedletskiy.ru/Kosechok/network-tools-server)
|
||||||
|
|
||||||
|
## Стек
|
||||||
|
|
||||||
|
- **Node.js** + Express
|
||||||
|
- **Socket.io** — стриминг ответов в реальном времени
|
||||||
|
- **Axios** — выполнение проксируемых запросов
|
||||||
|
- **Docker** — контейнеризация
|
||||||
|
- **Drone CI** — автоматическая сборка и публикация образа
|
||||||
|
|
||||||
|
## Быстрый старт
|
||||||
|
|
||||||
|
### Локально
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm install
|
||||||
|
npm run dev
|
||||||
|
```
|
||||||
|
|
||||||
|
Сервер запустится на `http://localhost:4000`
|
||||||
|
|
||||||
|
### Docker
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker pull git.sedletskiy.ru/kosechok/network-tools-server:latest
|
||||||
|
|
||||||
|
docker run -d \
|
||||||
|
--name proxy-server \
|
||||||
|
--restart unless-stopped \
|
||||||
|
-p 4000:4000 \
|
||||||
|
-e PORT=4000 \
|
||||||
|
git.sedletskiy.ru/kosechok/network-tools-server:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
## Переменные окружения
|
||||||
|
|
||||||
|
| Переменная | По умолчанию | Описание |
|
||||||
|
|---|---|---|
|
||||||
|
| `PORT` | `4000` | Порт на котором слушает сервер |
|
||||||
|
|
||||||
|
## CI/CD
|
||||||
|
|
||||||
|
При каждом пуше в ветку `master` Drone CI автоматически:
|
||||||
|
|
||||||
|
1. Собирает Docker-образ
|
||||||
|
2. Публикует его в Gitea Container Registry (`git.sedletskiy.ru`)
|
||||||
|
|
||||||
|
Образ доступен по адресу:
|
||||||
|
|
||||||
|
```
|
||||||
|
git.sedletskiy.ru/kosechok/network-tools-server:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
## Структура проекта
|
||||||
|
|
||||||
|
```
|
||||||
|
├── index.js # Точка входа
|
||||||
|
├── package.json
|
||||||
|
├── Dockerfile
|
||||||
|
└── .drone.yml # Пайплайн CI/CD
|
||||||
|
```
|
||||||
|
|
||||||
|
## Разработка
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Установить зависимости
|
||||||
|
npm install
|
||||||
|
|
||||||
|
# Запустить с hot-reload
|
||||||
|
npm run dev
|
||||||
|
|
||||||
|
# Запустить без hot-reload
|
||||||
|
npm start
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user