Upload files to "/"

This commit is contained in:
2025-10-26 07:56:42 +00:00
commit 0b74ed3f9c

163
README.md Normal file
View File

@@ -0,0 +1,163 @@
🧱 Infrastructure Overview --- TCom Embedded Laboratory
=====================================================
🚀 Загальний опис системи
-------------------------
Це домашня Docker-серверна інфраструктура для:
- розробки (Gitea)
- веб-додатків (Flask + Caddy)
- моніторингу (Prometheus + Grafana)
- автоматизації дому (Mosquitto MQTT + Node-RED)
- централізованого управління мережею сервісів
Стек побудований через Docker та керується через CLI.
* * * * *
🗂 Структура розгортання
------------------------
Всі додатки розташовані в:
`~/DOCKER/`
| Сервіс | Каталог | Опис | Статус |
| --- | --- | --- | --- |
| **Caddy** | `~/DOCKER/caddy` | Reverse Proxy + HTTPS | ✅ Працює |
| **myapp1** (Flask) | `~/DOCKER/myapp1` | Демо-веб API | ✅ Працює |
| **Prometheus** | `~/DOCKER/prometheus` | Збір метрик | ✅ Працює |
| **Grafana** | `~/DOCKER/grafana` | Dashboard-система | ✅ Працює |
| **Mosquitto** (MQTT брокер) | `~/DOCKER/mosquitto` | Smart Home MQTT | ✅ Працює |
| **Node-RED** | `~/DOCKER/nodered` | Логіка Smart Home | ✅ Працює |
| **Gitea** | `~/DOCKER/gitea` | Git-сервер | ✅ Працює |
* * * * *
🌐 Мапа сервісів і доменів
--------------------------
| Сервіс | URL | Аутентифікація | Доступ |
| --- | --- | --- | --- |
| Git Server | https://git.tcom.space | ✅ Пароль/2FA | WAN / LAN |
| Flask App | (приклад) https://myapp1.tcom.space | ❌ Нема авторизації | WAN / LAN |
| Grafana | https://grafana.tcom.space | ✅ | WAN / LAN |
| Prometheus | <https://prometheus.tcom.space> | ✅ BasicAuth | WAN / LAN |
| Mosquitto MQTT | `mqtt://192.168.0.3:1883` | ❌ | LAN only |
| Node-RED | http://192.168.0.3:1880 | ❌ | LAN only |
**Caddy** автоматично видає Let's Encrypt сертифікати.
* * * * *
🔒 Політика безпеки
-------------------
Все, що в Інтернет → тільки через Caddy\
✅ Більшість сервісів --- **закриті у LAN/VPN**\
✅ Gitea: реєстрація ❌, OpenID ❌\
✅ Admin-login змінено вручну\
✅ 2FA рекомендовано
* * * * *
🛠 Управління сервісами
-----------------------
### Запустити все
`docker compose up -d`
### Перезапустити один сервіс
`cd ~/DOCKER/<ім'я>
docker compose restart `
### Перегляд логів
`docker logs -f <container>`
### Оновити контейнер
`docker compose pull
docker compose up -d`
* * * * *
💾 Бекап
--------
### Бекап Gitea
`docker exec -u 1000:1000 gitea\
gitea dump --file /data/gitea-backup.zip
docker cp gitea:/data/gitea-backup.zip .`
(зберігає БД + репозиторії + конфіг)
### MQTT та Node-RED
Вміст зберігається у томах Docker:
`~/DOCKER/mosquitto/data
~/DOCKER/nodered/data`
### Пропозиція
🟡 Настроїти **автобекап раз на день**
* * * * *
📈 Моніторинг
-------------
Prometheus → збирає:
- Docker статус
- Системні метрики сервера (CPU/RAM/Temp)
Grafana → показує:
- Кастомні dashboards
- MQTT / Smart Home статистику
➡ Можемо додати **Node Exporter** для ще детальнішого моніторингу.
* * * * *
🔧 План розвитку
----------------
| Етап | Статус |
| --- | --- |
| Docker Core + Reverse Proxy | ✅ Done |
| Smart Home MQTT migrate | ✅ Done |
| Gitea migrate + HTTPS + Security | ✅ Done |
| CI/CD Flask auto deploy | ⏳ Next |
| Docker GUI (Portainer) | ⏳ Next |
| Docker auto upgrade (Watchtower) | ⏳ Next |
| Full monitoring dashboards | ⏳ Next |
* * * * *
👤 Контакти адміністратора
--------------------------
`Тарас (Owner)
ssh tcom@192.168.0.3 (LAN/VPN)`
> Коментар: Вхід SSH з Інтернету заблоковано з міркувань безпеки.
* * * * *
✅ Summary
=========
Готова **хмарна локальна інфраструктура** з Git-сервером та Smart Home, усе **інфраструктурно правильно**, на Docker, із резервним копіюванням та моніторингом.