Полнофункциональный Minecraft сервер с веб-интерфейсом, системой донатов и AI Research платформой.
Velocity Proxy (25565)
├─> Lobby (25569) - Точка входа с авторизацией
├─> Survival (25571) - Классический выживание
├─> AI Research (25570) - Сервер для AI ботов
└─> Survival+ (25572) - В разработке
PostgreSQL (5432) - Единая БД
Backend API (3000) - REST API
Frontend (80) - Веб-сайт
Caddy (nettyanweb) - HTTPS Reverse Proxy
Интеграция с nettyanweb:
Проект использует Caddy из репозитория nettyanweb для HTTPS и reverse proxy. Backend и frontend подключаются к сети nettyan_ssl.
git clone https://github.com/kragger-ra/NetTyanMC.git
cd NetTyanMCПодробная инструкция: docs/POST_CLONE_SETUP.md
Кратко:
- Скачать Java 21+ и Docker
- Не нужно скачивать Paper/Velocity JAR - автоматически через itzg/minecraft-server
- Скачать плагины (список в docs/POST_CLONE_SETUP.md)
- Создать
.envиз.env.example - Убедиться что nettyanweb развернут и сеть
nettyan_sslсоздана - Запустить:
docker-compose up -d
Вся документация находится в папке docs/
| Документ | Описание |
|---|---|
| docs/POST_CLONE_SETUP.md | Полная инструкция развертывания после клонирования |
| docs/STATUS.md | Текущий статус проекта и выполненные задачи |
| docs/DEPLOYMENT_GUIDE.md | Детальное руководство по развертыванию |
| docs/LUCKPERMS_SETUP.md | Система ролей и прав (команды для настройки) |
| docs/HTTPS_SETUP.md | Настройка HTTPS с Let's Encrypt |
| docs/RUNNER_SETUP.md | Настройка GitHub Actions Self-Hosted Runner |
| docs/CRAFTY_CONTROLLER.md | Веб-панель управления серверами |
| docs/BACKUP_GUIDE.md | Стратегия резервного копирования |
| docs/MONITORING_GUIDE.md | Мониторинг и алерты |
| docs/SECURITY_GUIDE.md | Безопасность и secrets management |
Полный список документации: docs/README.md
- itzg/minecraft-server - Docker образ для Minecraft серверов
- Paper 1.21.1 - серверное ядро (автозагрузка)
- Velocity - прокси-сервер (автозагрузка)
- PostgreSQL 16 - база данных
- Docker - контейнеризация
- LuckPerms - система прав
- AuthMe - авторизация (Lobby)
- WorldGuard / WorldEdit - защита регионов
- EssentialsX - базовые команды
- PlayerPoints - валюта (AgiCoins)
- ShopGUIPlus - магазин
- DecentHolograms / FancyNpcs - NPC и голограммы
- Backend: Node.js, Express, JWT, YooKassa API
- Frontend: React, Vite, Zustand
- Reverse Proxy: Caddy из nettyanweb (авто SSL через Let's Encrypt)
NetTyanMC/
├── lobby/ # Lobby сервер (itzg/minecraft-server)
│ └── config/ # Конфиги плагинов (AuthMe, LuckPerms, и т.д.)
├── survival/ # Survival сервер (itzg/minecraft-server)
│ └── config/ # Конфиги плагинов
├── ai_research/ # AI Research сервер (itzg/minecraft-server)
│ └── config/
├── velocity/ # Velocity прокси (itzg/minecraft-server)
│ └── config/
├── backend/ # Backend API
│ ├── src/
│ └── package.json
├── frontend/ # React frontend
│ ├── src/
│ └── package.json
├── postgres/ # PostgreSQL схемы
│ └── init.sql
├── scripts/ # Утилиты и скрипты
│ ├── backup.sh
│ └── generate-secrets.sh
├── docs/ # Документация
│ ├── README.md # Оглавление документации
│ └── *.md # Руководства
├── .github/ # CI/CD workflows
│ └── workflows/
├── docker-compose.yml # Оркестрация всех сервисов
└── .gitignore # Исключения Git
# Paper/Velocity JAR автоматически загружаются через itzg образ
# Миры и данные хранятся в именованных Docker volumes
- Java: 21+
- Docker: 20.10+ и Docker Compose
- RAM: Минимум 24GB
- Velocity: 1GB
- Lobby: 2GB
- Survival: 10GB
- AI Research: 10GB
- PostgreSQL: 512MB
- Backend: 512MB
- Диск: 10GB+ свободно (без учета миров)
- nettyanweb: Развернутый репозиторий с Caddy
Проект настроен на автоматический деплой через GitHub Actions с self-hosted runner:
- Push в main автоматически пересобирает и перезапускает сервисы
- Secrets автоматически создаются в .env из GitHub Secrets
- Timeout защита - git pull прерывается через 30 секунд если зависает
Подробнее: docs/RUNNER_SETUP.md