Мне было грустно без Modhost и я сделал Meowbox



Начнём сразу с магии.

Берёшь чистый VPS на Ubuntu, запускаешь одну команду:
curl -fsSL https://raw.githubusercontent.com/gvozdb/meowbox/main/bootstrap.sh | sudo PANEL_PORT=18443 bash
И у тебя настроенный сервер под MODX со всеми убранствами.

Больше не надо:
– мучаться с терминалом,
– настраивать сервер с нуля вручную,
– настраивать конфиги NGINX/PHP/MySQL/SSL/etc,
– настраивать бекапы,
– логи,
– мониторинг,
– уведомления в телеграм бота,
– итд,
– итп.
Всё это (и даже больше) теперь делает Meowbox.


MODX в центре


Панель в первую очередь заточена под MODX 3. Поддержка MODX Revo тоже есть, потому что старые проекты никуда не исчезли.

Тут и вход в админку одной кнопкой без ввода пароля (like-modhost), и апгрейд версии MODX в пару кликов (like-modhost), и другие мелочи. Автоматический деплой Modstore провайдера и выбор предустановленных компонентов подвезут позже.

В панели есть MODX Доктор.

Это диагностика типовых проблем MODX-сайта. Нажал кнопку, получил список того, что не так: права, кэш, оставленный setup, проблемы с путями и другие вещи, которые обычно ищутся руками. Нажал «Починить» – проблемы исчезли.

Список проверок будет пополняться. Идея простая: если проблема встречалась больше 1 раза, её надо уметь проверять кнопкой.

.

Adminer вместо PhpMyAdmin


Для работы с БД используется тяжёлый и тупой PhpMyAdmin быстрый и лёгкий Adminer. Поддерживаются не только MySQL/MariaDB. Можно ходить в PostgreSQL и даже в Manticore индекс.

Можно открыть базу без ручного ввода паролей. Нажал кнопку Adminer, и панель выдаёт одноразовый доступ.

.

Бэкапы через Restic


Бэкапы встроены в панель нормально, а не в виде «ну там где-то лежит архив, удачи».

Есть поддержка Restic. Можно хранить копии локально, в S3, на Yandex Disk или Cloud Mail.ru.

Восстановление тоже есть: полное или частичное. Можно не тащить весь сайт обратно, если нужен один файл или кусок данных.

Есть даже механизм сравнения между restic-снапшотами, а также между снапшотом и текущей версией файлов.

.

Nginx без боли


Meowbox генерирует nginx-конфиги сам.

Но есть важная деталь: конфиг сделан слоями. Панель управляет своими частями, а пользовательский кастомный блок живёт отдельно и не затирается при каждом изменении настроек.

То есть можно править специфичные правила сайта и не бояться, что панель потом всё перепишет поверх.

Для MODX это особенно полезно. Friendly URLs, защита core, отдельные пути manager и connectors, лимиты, gzip, rate limit, SSL, редиректы, всё должно жить вместе и не превращаться в кашу. Поэтому CMS-специфичная конфигурация доступна к редактированию напрямую, а остальным рулит панель через настройки в Web UI.

.

Контроль над сервером


В панели есть мониторинг, логи, cron-задачи, SSL, PHP-версии, базы, файлы, firewall, DNS доменов (через API Yandex 360 или Cloudflare) и что-то там ещё.

Архитектурно устроено так: API хранит состояние и принимает решения, а системные команды выполняет агент на сервере. Это позволяет держать опасные операции в одном месте и не размазывать прямой доступ к ОС по всему проекту.

Сама панель хранит данные в SQLite файле. Для маленькой self-hosted панели это проще всего: меньше жрёт память, проще бэкапить, проще переносить.

.

Что дальше


Сейчас Meowbox больше всего полезен для MODX.

Но в будущем я хочу добавить удобное управление Node.js сайтами и приложениями: деплой, PM2-процессы, возможно Docker-контейнеры, нормальную поддержку CI/CD.

Ну и, конечно, AI-админа для самых рискованных. Чтобы можно было написать «почини сайт», а он одной командой rm -rf / избавил вас от головной боли.

.

Статус


Meowbox сейчас в разработке.

Это значит, что баги будут точно! Некоторые места ещё будут допиливаться. Часть функций будет меняться. Что-то будет ломаться, чиниться и переписываться по мере боевого использования.

Я делаю панель под свои задачи, в режиме реальной обкатки.

.

P.S.


Используя Meowbox, вы полностью берёте на себя ответственность за свои VPS, сайты, базы и данные.

Панель помогает администрировать сервер, но не отменяет бэкапы, голову и осторожность. Пока проект в активной разработке, это особенно важно.

Ссылка на репозиторий: github.com/gvozdb/meowbox
Павел Гвоздь
Вчера в 01:43
modx.pro
2
515
+10
Поблагодарить автора Отправить деньги

Комментарии: 7

Николай Савин
Вчера в 12:15
+1
Звучит вкусно.
    Николай Савин
    Вчера в 14:34
    0
    А почему такое забавное название?
    Александр
    Вчера в 18:37
    0
    Привет! Уже года 3 сижу на ISP Manager за который плачу и который особо не нужен, просто в какой-то момент поставил, а потом научившись всё че угодно просто было лень переносить сайты оттуда. Твоё решение после прочтения так понравилось что пошел ставить.
    Из того что сразу бросается в глаза, странно что imagick который по сути около обязательный для всех сайтов на MODX надо устанавливать дополнительно на PHP
    По поводу PHP, стоят от 8.0 и выше, других выбрать нельзя, как поставить на сервер и увидит ли панель не до конца ясно, однако при создании сайта могу поставить 7.4 (будет ошибка и не создаст), тут я бы просто предложил иметь возможность установить 7.4 из выпадающего списка в списке PHP
      Александр
      Вчера в 19:21
      0
      Доп боль с текущими блокировками, на убунту не ставится php7.4 из за того что ppa.launchpadcontent.net/ тупо недоступен) Полагаю что панель, возможно, пыталась сама поставить 7.4 но из за ошибки установки просто скипнула. Тогда мой коммент не имеет смысла
        Павел Гвоздь
        5 часов назад
        0
        PHP версии можно установить от 7.1 до 8.4 (на странице /php). Там же поставить доп extensions, тоже буквально через модальное окно:



        Откровенно скажу, мне не особо требуется на моих сайтах Imagick, поэтому я его не добавлял в список поставляемых расширений. Хватало фолбэка на GD… Но я добавлю в новой версии Imagick стандартом, а также создам миграцию при апгрейде панельки.
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        7