ENERGOSKAN DEVELOPMENT PORTAL · АДМИНИСТРИРОВАНИЕ

Система

Основные сведения о портале, его компонентах, каталогах, службах, версии и базовых операциях администратора.

01

Назначение системы

Корпоративная среда разработки и работы с проектами Energoskan.

Energoskan Development Portal объединяет веб-панель, пользовательские рабочие пространства, VS Code, Docker-контейнеры, средства публикации проектов и подключение нейросетей через промежуточный AI-контур.

02

Основные компоненты

Сервисы, обеспечивающие работу портала.

Веб-панель Node.js · Express · 127.0.0.1:3020
Nginx HTTPS и обратное проксирование
Docker Workspace Изолированная рабочая среда пользователя
Anthropic Shim Промежуточный AI-шлюз · порт 8190
03

Основные каталоги

Расположение программных файлов и рабочих данных.

/opt/dev-portal основной каталог проекта и Git-репозиторий
/opt/dev-portal/panel сервер веб-панели и клиентская часть
/opt/dev-portal/content административные страницы, документация и база знаний
/opt/dev-portal/shim Anthropic Shim и логика AI-шлюза
/opt/dev-portal/systemd эталонные файлы системных служб
/opt/dev-portal/nginx эталонная конфигурация Nginx
/opt/dev-portal/workspace-image исходники Docker-образа рабочей среды
/data/vibe-students рабочие пространства пользователей
/data/config пользователи, настройки, журналы и служебные данные
04

Системные службы

Главные процессы, необходимые для работы портала.

vibe-panel.service веб-панель Energoskan Development Portal
anthropic-shim.service AI-шлюз для Claude Code и чатов портала
nginx.service HTTPS, домен и проксирование запросов
privoxy.service прокси-контур для внешних AI-сервисов
docker.service пользовательские контейнеры и запуск проектов
05

Версия портала

Версия хранится централизованно и доступна через API.

Главным источником информации о версии является файл /opt/dev-portal/VERSION.

PRODUCT=Energoskan Development Portal
VERSION=2.0.0-alpha.1
BRANCH=development-2.0
STATUS=Development
CODENAME=Phoenix
COMPATIBILITY=v1.x

Проверка версии через API:

curl -s http://127.0.0.1:3020/api/version

API возвращает название продукта, номер версии, ветку разработки, статус, кодовое имя и совместимость.

06

Проверка состояния

Базовые команды ежедневной диагностики.

Состояние служб

systemctl status vibe-panel.service
systemctl status anthropic-shim.service
systemctl status nginx.service
systemctl status privoxy.service
systemctl status docker.service

Проверка веб-панели

curl -I http://127.0.0.1:3020/
curl -s http://127.0.0.1:3020/api/version

Проверка AI-шлюза

curl -s http://127.0.0.1:8190/_shim/health

Проверка внешнего сайта

curl -I https://energoskandev.ru/

Проверка контейнеров

docker ps
docker ps -a
07

Управление службами

Команды перезапуска после изменения конфигурации.

systemctl restart vibe-panel.service
systemctl restart anthropic-shim.service
systemctl restart nginx.service

После перезапуска обязательно проверить статус службы и доступность соответствующего HTTP-интерфейса.

08

Журналы

Получение последних сообщений и поиск причин ошибок.

journalctl -u vibe-panel.service -n 100 --no-pager
journalctl -u anthropic-shim.service -n 100 --no-pager
journalctl -u nginx.service -n 100 --no-pager
journalctl -u privoxy.service -n 100 --no-pager

Просмотр журнала службы в реальном времени:

journalctl -u vibe-panel.service -f
09

Git и контроль изменений

Текущее состояние исходного кода контролируется Git.

cd /opt/dev-portal
git status
git branch --show-current
git log --oneline -10

Рабочая ветка версии 2.0: development-2.0. Стабильная версия 1.0 сохранена отдельной веткой и тегом.

10

Правила администратора

Минимальный регламент безопасного изменения системы.

  1. Перед изменением файла создать резервную копию.
  2. Изменять только один логический компонент за один шаг.
  3. После изменения проверить синтаксис и доступность сервиса.
  4. Не хранить пароли, токены и файлы .env в Git.
  5. Не удалять рабочие данные пользователя без архива.
  6. Перед крупным изменением фиксировать стабильную точку восстановления.
  7. Документировать найденные ошибки и способы их устранения.