
MiniMin: как я написал свой велосипед для управления Minecraft-серверами и клиентскими сборками
quonaro 33 минуты назад MiniMin: как я написал свой велосипед для управления Minecraft-серверами и клиентскими сборками Простой 5 мин 746 Go * VueJS * DIY или Сделай сам Обзор Всем привет! Частенько ли у вас возникает...
Anthropic — What company has the best second artificial intelligence model at the end of June?
Значимый прорыв формирует отрасль ИИ: quonaro 33 минуты назад MiniMin: как я написал свой велосипед для управления Minecraft-серверами и клиентскими сборками Простой 5 мин 746 Go * VueJS * DIY или Сделай сам Обзор Всем привет! Частенько ли у вас возникает желание пойти в одну очень популярную песочницу (Minecraft) ? Я думаю раз в пол года - год у многих возникает такое желание.
И также часто возникает желание поставить парочку… сотен модов. Этот пост написан для себя-любимого и для тех людей кого тоже очень бесит настраивать моды , пытаться их синхронизировать между друзьями. Я не претендую на какой то Clean код и тд и тп.
Технические детали
Код писали ИИ агенты. Я просто как обычный обыватель и разработчик описываю свою боль и как я сделал инструмент в первую очередь для своих нужд. Итак… НачнемЧто мы хотим:Поиграть с друзьями на fabric/forge сборкеНе поссориться из-за того что друзьями приходится постоянно обновлять модыНе лазить по сторонним ресурсам чтобы найти эти самые модыБыстро запуститьВведениеСразу уточню.
Я говорю про Self-hosted варианты, а не покупка готового майнкрафт сервера на каком-нибудь AternosКакие вообще варианты у нас есть:1) Просто развернуть сервер на хостовой машине (Без контейнеров)2) Docker / Docker ComposeУдобный запуск, можно легко поменять версию Java и не создавать лишних зависимостей (Только если скачанный Docker Image). Но как в первом варианте. Придется все моды закидывать в папку сервера, запускать , смотреть логи , и еще желательно где-то рядом собирать клиентскую сборку, а потом ее архивировать и отправлять друзьям.
И повезет если они не ленивые. Я соглашусь, что никто не мешает написать парочку скриптов и это уже будет удобнее. Но чаще хочется просто зайти в удобную панельку, понажимать на несколько кнопок и точно быть уверенным что все друзья получат актуальную сборку и сервер живет как нужно3) PterodactylПервое что приходит на ум из более универсального и удобного, но я если честно считаю что он слишком огромный для такой простенькой задачи.
Отраслевые последствия
Он больше предназначен для большой серверной инфраструктуры, а не для развертывания пары сборок. Возможно я не знаю каких то вариантов, возможно более нишевых. Но по итогу было предпринято решение писать подобный инструмент самостоятельно !
Что использовалКак и в начале любого проекта, нужно определиться со стэком и технологиями:VueJS/Nuxt для интерфейсGoLang - Я бы мог взять и Python для более быстрого прототипирования, но все таки решил пойти таким образом, просто потому что хотелось получить один маленький бинарь и попрактиковаться в языке + есть нативная поддержка Docker API, что мне в целом и нужно. Docker - Да, все сервера мы будем держать в контейнерах. Возможно ударит по производительности, которой и так нет, но зато отслеживать и устанавливать сборки становится очень просто засчет одного проекта, я говорю про itzg/minecraft-server.
Этот образ послужит основой для управления серверами. Wails - Позволяет писать десктопные приложения с использованием системного WebView на Go.
Событие, по словам экспертов, усилит конкуренцию в сфере ИИ.




