README.md: - Fix badge line breaks - Add migration 008_auto_cleanup_metrics.sql - Improve architecture diagram - Add troubleshooting section - Add changelog - Fix formatting ARCHITECTURE.md: - Update agent metrics list (net_in_*, temp_*, etc.) - Change interval from 10s to 60s - Fix architecture diagram INSTALL.md: - PHP 8.1 -> 8.3 - php8.1-fpm.sock -> php8.3-fpm.sock - Update API example with current metrics AGENTS.md: - PHP 8.1 -> 8.3 - Update API endpoints with new /get-agent, /agent/install.sh docker/README.md: - Fix password from 'admin' to 'mirvmon2026' TECHNICAL_SPECIFICATION.md: - Change agent interval from 10s to 60s - Add lm-sensors, smartmontools to agent requirements |
||
|---|---|---|
| .. | ||
| migrations | ||
| .env.example | ||
| Dockerfile | ||
| README.md | ||
| deploy.sh | ||
| docker-compose.yml | ||
| init.sh | ||
| migrate.sh | ||
| nginx.conf | ||
README.md
MirvMon — Docker Setup
Быстрый старт
# 1. Копируем конфиг
cp .env.example .env
# 2. Меняем пароли в .env
nano .env
# 3. Запускаем
docker compose up -d --build
# 4. Открываем http://localhost:8080
# Логин: admin
# Пароль: mirvmon2026 (сменить сразу!)
Обновление
# Обновить код и пересобрать
git pull
docker compose up -d --build
# Или если образы в registry:
docker compose pull
docker compose up -d
Структура
docker/
├── Dockerfile # PHP 8.3 FPM + приложение
├── docker-compose.yml # app + nginx + db
├── nginx.conf # конфиг nginx
├── init.sh # entrypoint (ждёт БД + миграции)
├── migrate.sh # скрипт миграций
├── migrations/ # SQL миграции с версионированием
│ ├── 001_create_base_schema.sql
│ ├── 002_add_encrypted_token.sql
│ ├── ...
├── .env.example # шаблон конфига
└── README.md # этот файл
Миграции
Каждая миграция — SQL файл с номером в имени. Система отслеживает применённые в таблице schema_migrations.
Добавить новую:
echo "ALTER TABLE servers ADD COLUMN foo VARCHAR(50);" > docker/migrations/009_add_foo.sql
docker compose up -d --build
Переменные окружения (.env)
| Переменная | Описание | По умолчанию |
|---|---|---|
APP_PORT |
Порт веб-интерфейса | 8080 |
DB_HOST |
Хост БД | db |
DB_NAME |
Имя базы | monitoring_system |
DB_USERNAME |
Пользователь БД | mon_user |
DB_PASSWORD |
Пароль БД | mon_password_123 |
DB_ROOT_PASSWORD |
Root пароль БД | (обязательно сменить!) |
Тома (persistent data)
| Volume | Что хранит |
|---|---|
db_data |
База данных MariaDB |
app_var |
Кэш Twig и логи PHP |
Код приложения не монтируется — он внутри образа. Обновление = новый образ.