Skip to content

About

An ultimate guide step by step "Buid your own Free Minecraft server"

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

55 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Minecraft Server banner
Minecraft animated tagline

A step by step guide to hosting your own private Minecraft Java server in the cloud.

Powered by GitHub Codespaces, PaperMC, Crafty Controller and Playit.gg.


Minecraft Java PaperMC Codespaces


Crafty Playit Documentation License


Stars Forks Watchers Issues Last Commit Repo Size


ABOUT ・ ARCHITECTURE ・ QUICK START ・ LANGUAGES ・ LIMITATIONS


01 / About

Ever wanted to create a Minecraft server for you and your friends without paying for traditional hosting?

Minecraft Server is a multilingual educational project explaining how to deploy and manage a private Minecraft Java server using cloud development resources.

The setup combines four main technologies:

Technology Purpose
GitHub Codespaces Provides the cloud Linux environment
PaperMC Runs the Minecraft Java server
Crafty Controller Provides a web interface to manage the server
Playit.gg Creates a public connection tunnel for players

The goal is to make server hosting accessible to beginners while explaining the commands, configuration and tools involved.

What the guide covers

  • Creating a GitHub Codespace.
  • Preparing a Linux environment.
  • Installing Java 21.
  • Downloading and configuring PaperMC.
  • Installing and configuring Playit.gg.
  • Installing Crafty Controller.
  • Managing the server through a web dashboard.
  • Creating automatic world backups.
  • Starting and stopping gaming sessions.
  • Monitoring Codespaces usage.
Green separator Server loading animation

02 / Architecture

The server uses a cloud based Linux environment. PaperMC handles the game world, Crafty manages the server and Playit.gg makes the game port reachable by players.

Minecraft Java Playit tunnel PaperMC Crafty Controller

Connection overview

flowchart TB
    PLAYER["Players<br/>Minecraft Java Edition"]
    PLAYIT["Playit.gg<br/>Public tunnel"]
    AGENT["Playit agent<br/>Inside Codespace"]
    PAPER["PaperMC<br/>TCP 25565"]

    subgraph CLOUD["GitHub Codespaces"]
        subgraph SERVER["Linux environment"]
            AGENT
            PAPER
            CRAFTY["Crafty Controller<br/>Web panel :8443"]
        end
    end

    PLAYER --> PLAYIT
    PLAYIT --> AGENT
    AGENT --> PAPER
    CRAFTY -.-> PAPER
Loading

Components

Component Role
GitHub Codespaces Cloud development environment
Linux Operating system
Java 21 Runtime environment
PaperMC 1.21.4 Minecraft server software used by the guide
Crafty Controller 4.x Server administration panel
Playit.gg Public tunnel for Minecraft connections
Python 3 Required by the Crafty installation
Bash Startup and backup scripts

Network ports

Port Service Purpose
25565/TCP PaperMC Minecraft Java connections
8443/TCP Crafty Controller Web administration panel

The ports are accessed through the Codespaces port forwarding interface. The Minecraft port is exposed through Playit.gg, while Crafty's web panel is accessed through its forwarded Codespaces port.

03 / Technical environment

The current guides use the following baseline configuration.

Component Guide configuration
Cloud environment GitHub Codespaces
Machine type 2 cores
Memory 8 GB RAM
Operating system Ubuntu / Linux
Java OpenJDK 21
Minecraft Java Edition 1.21.4
Server software PaperMC 1.21.4
Management panel Crafty Controller 4.x
Tunnel Playit.gg
Backup format Compressed TAR.GZ archives

These are the configuration values documented in the current guides. They are not claims that these are the latest available Minecraft or PaperMC versions.

04 / Quick start

This repository is the documentation project. It contains the installation guides, not a preconfigured Minecraft server or ready made startup scripts.

To create your own server, follow these steps:

Step 1: Choose your language

Open the guide that matches your preferred language in the Docs directory.

Step 2: Create your accounts

You need:

Step 3: Create your server repository

Follow the guide to create a separate private repository for your Minecraft server.

The documentation uses mc-server as its example repository name.

Step 4: Create a Codespace

Create a Codespace from your server repository and select the 2-core machine configuration described in the guide.

Step 5: Follow the installation guide

The guide takes you through Java, PaperMC, Playit.gg and Crafty Controller, then helps you configure backups and manage your server sessions.

Tools used during installation
Tool Official website
GitHub Codespaces github.com/features/codespaces
Java adoptium.net
PaperMC papermc.io
Crafty Controller craftycontrol.com
Playit.gg playit.gg

05 / Documentation languages

The project includes installation guides in eight languages.

English Français Português Deutsch


Español Italiano 日本語 Русский

Language Guide
English EN.GUIDE.md
Français FR_Guide.md
Português (Brasil) BR.GUIDE.md
Deutsch DE.GUIDE.md
Español ES.GUIDE.md
Italiano IT.GUIDE.md
日本語 JA.GUIDE.md
Русский RU.GUIDE.md

Each guide follows the same general installation process, adapted to its language.

06 / Session management

The guides explain how to prepare the environment for a gaming session and how to shut it down correctly.

During setup

The tutorial creates several scripts inside the Codespace:

Script Purpose
start.sh Starts the PaperMC server with the configured Java parameters
backup.sh Creates compressed backups of the Minecraft world
keep-alive.sh Legacy helper discussed in the guide for session activity

These scripts are created during the tutorial. They are not included as executable files in this repository.

Starting a session

The general startup sequence is:

  1. Open the Codespace.
  2. Start the Playit.gg agent.
  3. Start the PaperMC server.
  4. Start Crafty Controller.
  5. Check that the tunnel and server are operational.
  6. Share the public Playit.gg address with your players.

Stopping a session

At the end of a gaming session:

  1. Stop the Minecraft server cleanly.
  2. Stop the Playit.gg agent.
  3. Stop Crafty Controller.
  4. Stop the Codespace from GitHub.

Closing the browser tab does not necessarily stop the Codespace.

07 / Backups and persistence

Minecraft worlds contain valuable player data and should be backed up regularly.

The installation guide explains how to create compressed world archives and schedule backups.

Important: a backup stored inside the same Codespace is not a permanent external backup. Download or transfer important archives to storage outside the Codespace before deleting it.

The repository does not contain player worlds or generated backup archives.

08 / Codespaces quotas and limitations

GitHub Codespaces is a cloud development service with limited included usage. It should not be treated as unlimited or permanent Minecraft hosting.

For personal accounts, the currently documented monthly allowances are:

Account Included compute Storage
GitHub Free 120 core-hours 15 GB-month
GitHub Pro 180 core-hours 20 GB-month

A 2-core machine consumes 2 core-hours for every hour it remains active.

For a GitHub Free personal account, 120 core-hours therefore correspond to approximately 60 active hours on a 2-core machine, assuming no other Codespaces usage.

The available quota depends on the account plan and billing period. Usage beyond the included allowance may be billed when billing is enabled.

Important lifecycle limits

Setting Current documented behaviour
Default idle timeout 30 minutes
Configurable idle timeout 5 to 240 minutes
Maximum Codespace lifetime 12 hours

Use this setup for occasional private gaming sessions and educational purposes, not continuous 24/7 hosting.

The older guide includes a keep-alive helper. It must not be treated as a way to bypass platform limits or keep an unused Codespace running. Stop the Codespace when you finish playing.

Always check your own billing settings and current usage before starting a session.

Official references:

09 / Troubleshooting

Problem Possible cause Recommended action
Java version mismatch Wrong Java runtime Check that Java 21 is installed
PaperMC does not start Incorrect JAR or EULA Verify server.jar and eula.txt
Playit address is unreachable Tunnel agent is offline Check the Playit.gg dashboard
Crafty panel is inaccessible Port forwarding configuration Check that port 8443 is available
Server runs out of memory Incorrect RAM configuration Check Codespace machine type and Java memory values
Backup is missing Incorrect folder or cron configuration Check the script and scheduled task
Codespace stops Timeout or maximum lifetime Check Codespaces lifecycle settings

For additional help, consult the guide in your language or the official community resources.

10 / Resources and communities

PaperMC Crafty Playit Codespaces

Community For
PaperMC Discord Server software and plugins
Playit.gg Discord Tunnel and connection issues
Crafty Controller Docs Server panel installation and management
GitHub Issues Problems with this repository or its guides

11 / Repository structure

Minecraft-Server/
│
├── README.md
├── LICENSE
│
├── Docs/
│   ├── BR.GUIDE.md
│   ├── DE.GUIDE.md
│   ├── EN.GUIDE.md
│   ├── ES.GUIDE.md
│   ├── FR_Guide.md
│   ├── IT.GUIDE.md
│   ├── JA.GUIDE.md
│   └── RU.GUIDE.md
│
└── Others README o(* ̄▽ ̄*)o/
    ├── BR.README.md
    ├── DE.README.md
    ├── ES.README.md
    ├── FR_README.md
    ├── IT.README.md
    ├── JA.README.md
    └── RU.README.md

This repository primarily contains documentation and localized README material. The scripts and server files are generated or downloaded as part of the installation process described in the guides.

12 / Contributing

Found an outdated command, a broken link or a translation issue?

Contributions are welcome.

You can:

  • Report a problem through GitHub Issues.
  • Suggest corrections to a guide.
  • Improve an existing translation.
  • Help keep the installation instructions accurate.

When suggesting technical changes, include the operating system, Minecraft version and exact error message.

13 / License

This repository is distributed under the MIT License.

The license applies to the repository's own content. Minecraft, PaperMC, Crafty Controller, Playit.gg and other third-party products remain subject to their respective licenses and terms.


Minecraft footer Animated footer text

MINECRAFT SERVER

Build your world. Invite your friends. Start your adventure.


GitHub Repository Star


Java Edition · PaperMC · GitHub Codespaces · 2026


EVERY WORLD STARTS WITH A SINGLE BLOCK.

About

An ultimate guide step by step "Buid your own Free Minecraft server"

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors