{"id":51333760,"url":"https://github.com/devraikou/mcserver-installer","last_synced_at":"2026-07-05T04:00:37.766Z","repository":{"id":368498339,"uuid":"1284722713","full_name":"devRaikou/mcserver-installer","owner":"devRaikou","description":"A CLI tool that simplifies Minecraft server setup on Ubuntu and Debian.","archived":false,"fork":false,"pushed_at":"2026-07-03T09:23:03.000Z","size":827,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-07-04T03:09:48.356Z","etag":null,"topics":["cli","minecraft","minecraft-guides","minecraft-script","minecraft-setup","minecraft-shell-script","shell","shell-script","terminal","terminal-based"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/devRaikou.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-30T06:19:57.000Z","updated_at":"2026-07-03T14:32:48.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/devRaikou/mcserver-installer","commit_stats":null,"previous_names":["devraikou/mcserver-installer"],"tags_count":35,"template":false,"template_full_name":null,"purl":"pkg:github/devRaikou/mcserver-installer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devRaikou%2Fmcserver-installer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devRaikou%2Fmcserver-installer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devRaikou%2Fmcserver-installer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devRaikou%2Fmcserver-installer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devRaikou","download_url":"https://codeload.github.com/devRaikou/mcserver-installer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devRaikou%2Fmcserver-installer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35142824,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-05T02:00:06.290Z","response_time":100,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","minecraft","minecraft-guides","minecraft-script","minecraft-setup","minecraft-shell-script","shell","shell-script","terminal","terminal-based"],"created_at":"2026-07-02T01:01:23.784Z","updated_at":"2026-07-05T04:00:37.602Z","avatar_url":"https://github.com/devRaikou.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# mcserver-installer\n\n![Version](https://img.shields.io/badge/version-1.56-2ea44f)\n![Shell](https://img.shields.io/badge/shell-bash-4eaa25)\n![Platform](https://img.shields.io/badge/platform-Debian%20%7C%20Ubuntu-blue)\n![License](https://img.shields.io/badge/license-MIT-lightgrey)\n\n[English](#english) | [Turkce](#turkce)\n\n---\n\n## English\n\n`mcserver-installer` is a Bash-based CLI tool for installing, configuring, and managing Minecraft servers on Linux systems, with the smoothest path on Debian and Ubuntu.\n\nIt is designed for server owners and administrators who want one terminal interface for installation, updates, backups, runtime control, plugin management, and operational checks.\n\n### What It Does\n\n| Area | Details |\n| --- | --- |\n| Server installation | Installs Vanilla, Paper, Folia, Purpur, Fabric, Forge, NeoForge, Velocity, Waterfall, and BungeeCord. |\n| Java management | Detects the required Java version for the selected Minecraft version and installs OpenJDK when needed. |\n| Runtime control | Starts servers in detached GNU `screen` sessions and supports graceful stop/restart flows. |\n| Backups | Creates manual backups and schedules daily or weekly automated backups through `cron`. |\n| Configuration | Provides an interactive `server.properties` editor and RAM allocation controls. |\n| Monitoring | Shows live CPU, RAM, and disk usage for running servers. |\n| Notifications | Sends asynchronous Discord webhook alerts for server start, stop, force-stop, backups, and plugin changes. |\n| Boot startup | Generates `systemd` services so registered servers can start after host reboot. |\n| Plugins | Searches and installs compatible Modrinth plugins, removes plugin jars, and can install Geyser/Floodgate. |\n| Proxy networks | Can deploy backend Paper servers behind supported proxy software. |\n\n### Supported Software\n\nProduction server software:\n\n- Vanilla\n- Paper\n- Folia\n- Purpur\n- Fabric\n- Forge\n- NeoForge\n\nProxy software:\n\n- Velocity\n- Waterfall\n- BungeeCord\n\n### Requirements\n\nThe script automatically checks for the required tools and can install missing packages on Debian/Ubuntu:\n\n- `bash`\n- `curl`\n- `jq`\n- `screen`\n- `tar`\n- `gzip`\n- Java/OpenJDK version required by the selected Minecraft version\n\nVelocity builds require Java 21. The installer selects Java 21 for Velocity automatically and refreshes generated `start.sh` launchers before starting registered servers.\n\nNon-Debian Linux distributions and macOS may work in compatibility mode, but Debian/Ubuntu is the intended production target.\n\n### Quick Start\n\n```bash\ngit clone https://github.com/devRaikou/mcserver-installer.git\ncd mcserver-installer\nchmod +x mcserver-installer\n./mcserver-installer\n```\n\n### Headless Commands\n\nCreate a backup for a registered server without opening the interactive UI:\n\n```bash\n./mcserver-installer --backup \u003cserver_name\u003e\n```\n\nThis is useful for `cron`, remote automation, and external dashboards.\n\n### Main Menu\n\n```text\n  Developer: devRaikou | Version: 1.56\n  GitHub:    https://github.com/devRaikou/mcserver-installer\n  ================================================================\n\n  MAIN DIRECTORY MENU\n  ================================================================\n\n    1. Install Minecraft Server\n    2. Manage Existing Server\n    3. Update Server Jar\n    4. Backup Server\n    5. Restore Backup\n    6. Remove Server / Registration\n    7. Settings \u0026 System checks\n    8. About\n    9. Exit\n  ================================================================\n  Select option (1-9):\n```\n\n### Server Management\n\nAfter a server is installed and registered, the management menu can:\n\n- Start, stop, and restart the server.\n- Open a managed console overlay or attach directly to GNU `screen`.\n- View `logs/latest.log`.\n- Edit `server.properties`.\n- Create and restore backups.\n- Configure automated backup schedules.\n- Change RAM allocation in `start.sh`.\n- Optimize common Paper/Spigot configuration values.\n- Monitor live resource usage.\n- Install or remove plugins.\n- Enable or disable boot auto-start with `systemd`.\n\n### Runtime Model\n\nEach server is launched through a generated `start.sh` file. The script starts that file inside a detached `screen` session named with the pattern:\n\n```text\nmc-\u003cserver-name\u003e-\u003cpath-hash\u003e\n```\n\nThe generated launcher includes a crash restart loop. Manual stops create a `.stop_restart` lock file so intentional shutdowns do not immediately restart.\n\n### Backups\n\nManual and scheduled backups are stored in each server directory:\n\n```text\n\u003cserver\u003e/backups/backup_YYYYMMDD_HHMMSS.tar.gz\n```\n\nBackups exclude the `backups` and `logs` directories to avoid recursive archives and unnecessary log growth.\n\n### Settings\n\nThe installer stores its local settings and registry under:\n\n```text\n~/.mcserver-installer/\n```\n\nImportant files:\n\n- `registry.txt`: registered server name, path, software type, and version.\n- `settings.conf`: language and Discord webhook settings.\n- `.public_ip`: cached public IP used in UI and notifications.\n\n### Verification\n\nRun the verification script before publishing or after editing:\n\n```bash\n./verify.sh\n```\n\nIt checks Bash syntax, executable permissions, and Mojang version manifest parsing through `curl` and `jq`.\n\n### Developer\n\nDeveloped by **devRaikou** and released under the MIT License.\n\n### License\n\nThis project is licensed under the MIT License. See [LICENSE](LICENSE) for details.\n\n---\n\n## Turkce\n\n`mcserver-installer`, Linux sistemlerinde Minecraft sunucusu kurmak, yapılandırmak ve yönetmek için hazırlanmış Bash tabanlı bir CLI aracıdır. En sorunsuz kullanım hedefi Debian ve Ubuntu sistemleridir.\n\nSunucu sahipleri ve yöneticileri için kurulum, güncelleme, yedekleme, çalışma kontrolü, eklenti yönetimi ve sistem kontrollerini tek terminal arayüzünde toplar.\n\n### Ne Ise Yarar?\n\n| Alan | Detay |\n| --- | --- |\n| Sunucu kurulumu | Vanilla, Paper, Folia, Purpur, Fabric, Forge, NeoForge, Velocity, Waterfall ve BungeeCord kurabilir. |\n| Java yonetimi | Secilen Minecraft surumu icin gereken Java surumunu algilar ve gerekirse OpenJDK kurar. |\n| Calisma kontrolu | Sunuculari bagimsiz GNU `screen` oturumlarinda baslatir; guvenli durdurma ve yeniden baslatma akislari sunar. |\n| Yedekleme | Manuel yedek olusturur, `cron` ile gunluk veya haftalik otomatik yedek planlar. |\n| Yapilandirma | Etkilesimli `server.properties` editoru ve RAM ayarlari sunar. |\n| Izleme | Calisan sunucular icin canli CPU, RAM ve disk kullanimini gosterir. |\n| Bildirimler | Baslatma, durdurma, zorla kapatma, yedekleme ve eklenti islemleri icin Discord webhook bildirimi gonderir. |\n| Sistem acilisi | Kayitli sunucularin makine acilisinda baslamasi icin `systemd` servisi olusturur. |\n| Eklentiler | Modrinth uzerinden uyumlu eklenti arar, kurar, siler ve Geyser/Floodgate kurulumu yapabilir. |\n| Proxy aglari | Desteklenen proxy yazilimlarinin arkasina Paper backend sunuculari kurabilir. |\n\n### Desteklenen Yazilimlar\n\nSunucu yazilimlari:\n\n- Vanilla\n- Paper\n- Folia\n- Purpur\n- Fabric\n- Forge\n- NeoForge\n\nProxy yazilimlari:\n\n- Velocity\n- Waterfall\n- BungeeCord\n\n### Gereksinimler\n\nScript gerekli araclari otomatik kontrol eder ve Debian/Ubuntu uzerinde eksik paketleri kurabilir:\n\n- `bash`\n- `curl`\n- `jq`\n- `screen`\n- `tar`\n- `gzip`\n- Secilen Minecraft surumunun gerektirdigi Java/OpenJDK surumu\n\nVelocity derlemeleri Java 21 gerektirir. Installer, Velocity icin Java 21'i otomatik secer ve kayitli sunucular baslatilmadan once olusturulan `start.sh` dosyasindaki Java yolunu yeniler.\n\nDebian disi Linux dagitimlari ve macOS uyumluluk modunda calisabilir, ancak asil hedef uretim ortami Debian/Ubuntu sistemleridir.\n\n### Hizli Baslangic\n\n```bash\ngit clone https://github.com/devRaikou/mcserver-installer.git\ncd mcserver-installer\nchmod +x mcserver-installer\n./mcserver-installer\n```\n\n### Etkilesimsiz Komutlar\n\nKayitli bir sunucunun yedegini arayuzu acmadan almak icin:\n\n```bash\n./mcserver-installer --backup \u003csunucu_adi\u003e\n```\n\nBu ozellik `cron`, uzak otomasyonlar ve harici paneller icin kullanislidir.\n\n### Ana Menu\n\n```text\n  Geliştirici: devRaikou | Sürüm: 1.56\n  GitHub:      https://github.com/devRaikou/mcserver-installer\n  ================================================================\n\n  ANA MENÜ\n  ================================================================\n\n    1. Minecraft Sunucusu Kur\n    2. Mevcut Sunucuyu Yönet\n    3. Sunucu Jar Dosyasını Güncelle\n    4. Sunucuyu Yedekle\n    5. Yedeği Geri Yükle\n    6. Sunucuyu Kaldır / Kaydı Sil\n    7. Ayarlar ve Sistem Kontrolleri\n    8. Hakkında\n    9. Çıkış\n  ================================================================\n  Seçim yapın (1-9):\n```\n\n### Sunucu Yonetimi\n\nBir sunucu kurulduktan ve kaydedildikten sonra yonetim menusu ile sunlari yapabilirsiniz:\n\n- Sunucuyu baslatma, durdurma ve yeniden baslatma.\n- Yonetimli konsol arayuzu acma veya dogrudan GNU `screen` oturumuna baglanma.\n- `logs/latest.log` dosyasini goruntuleme.\n- `server.properties` dosyasini duzenleme.\n- Yedek olusturma ve yedekten geri yukleme.\n- Otomatik yedekleme zamanlamasi ayarlama.\n- `start.sh` icindeki RAM miktarlarini degistirme.\n- Yaygin Paper/Spigot performans ayarlarini optimize etme.\n- Canli kaynak kullanimini izleme.\n- Eklenti kurma veya silme.\n- `systemd` ile sistem acilisinda otomatik baslatmayi acma veya kapatma.\n\n### Calisma Modeli\n\nHer sunucu, kurulum sirasinda olusturulan `start.sh` dosyasi ile baslatilir. Bu dosya su formattaki bagimsiz bir `screen` oturumunda calisir:\n\n```text\nmc-\u003csunucu-adi\u003e-\u003cdizin-hash\u003e\n```\n\nOlusturulan baslatici dosyada cokme sonrasi otomatik yeniden baslatma dongusu bulunur. Manuel durdurmalarda `.stop_restart` kilit dosyasi olusturularak sunucunun hemen yeniden baslamasi engellenir.\n\n### Yedekler\n\nManuel ve otomatik yedekler her sunucunun kendi dizininde tutulur:\n\n```text\n\u003csunucu\u003e/backups/backup_YYYYMMDD_HHMMSS.tar.gz\n```\n\nYedekler olusturulurken `backups` ve `logs` dizinleri haric tutulur. Boylece tekrar eden arsivler ve gereksiz log buyumesi engellenir.\n\n### Ayarlar\n\nInstaller yerel ayarlarini ve sunucu kayitlarini su dizinde tutar:\n\n```text\n~/.mcserver-installer/\n```\n\nOnemli dosyalar:\n\n- `registry.txt`: kayitli sunucu adi, dizini, yazilim tipi ve surumu.\n- `settings.conf`: dil ve Discord webhook ayarlari.\n- `.public_ip`: arayuz ve bildirimlerde kullanilan onbellege alinmis genel IP.\n\n### Dogrulama\n\nDuzenleme yaptiktan veya yayinlamadan once dogrulama scriptini calistirin:\n\n```bash\n./verify.sh\n```\n\nBu script Bash soz dizimini, calistirma iznini ve `curl`/`jq` ile Mojang surum manifestinin okunabildigini kontrol eder.\n\n### Gelistirici\n\n**devRaikou** tarafindan gelistirilmis olup MIT Lisansi ile yayinlanmistir.\n\n### Lisans\n\nBu proje MIT Lisansi altinda yayinlanmistir. Detaylar icin [LICENSE](LICENSE) dosyasina bakin.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevraikou%2Fmcserver-installer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevraikou%2Fmcserver-installer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevraikou%2Fmcserver-installer/lists"}