Installing PocketMine-MP
PocketMine-MP can be installed in several ways depending on your platform and use case. Choose the method that best suits your needs.Installation Methods
Pre-built PHAR
Download and run the ready-to-use PHAR file (recommended for most users)
Docker
Run in a container with all dependencies included
From Source
Build from source code for development or customization
Pre-requisites
PocketMine-MP requires PHP 8.2 or newer with several non-standard extensions. PMMP provides custom PHP binaries that include all required extensions.
System Requirements
- OS: Linux, macOS, or Windows
- RAM: Minimum 2GB (4GB+ recommended)
- PHP: 8.2 or newer (custom binaries recommended)
- Disk Space: At least 1GB for server and worlds
Method 1: Using Pre-built PHAR (Recommended)
This is the easiest method for most users.Download PHP Binary
Download a pre-built PHP binary from pmmp/PHP-BinariesChoose the appropriate binary for your platform:
- Linux (x86_64)
- Windows (x86_64)
- macOS (x86_64 or ARM64)
Download PocketMine-MP
Download the latest
PocketMine-MP.phar from GitHub ReleasesExtract and Setup
Extract the PHP binary and place
PocketMine-MP.phar in the same directoryYour directory structure should look like:Using the Start Script
Thestart.sh script provides additional features:
The
-l flag enables loop mode, which automatically restarts the server if it crashes. To exit loop mode, press Ctrl+C during the 5-second restart countdown.Method 2: Docker
See the Docker Setup Guide for detailed instructions on running PocketMine-MP in a container. Quick start:Method 3: Building from Source
For developers and contributors who want to build PocketMine-MP from source.Pre-requisites
- A bash shell (Git Bash for Windows)
gitcommand-line tool- PHP 8.2 or newer
composerpackage manager
Building a PHAR
To create a distributablePocketMine-MP.phar:
PocketMine-MP.phar in the current directory.
Custom Build Options
Custom PHP Binaries
PocketMine-MP requires several non-standard PHP extensions:pthreads(for multi-threading)chunkutils2(for chunk handling)igbinary(for data serialization)leveldb(for world storage)crypto(for encryption)- And more…
Building Custom PHP
To build your own PHP binary with all required extensions:First Run Setup
On first run, PocketMine-MP will:-
Generate configuration files:
server.properties- Basic server configurationpocketmine.yml- Advanced PocketMine-MP settingsops.txt- Operator permissionswhite-list.txt- Whitelist (if enabled)
-
Create directory structure:
- Generate default world
- Start accepting connections on port 19132
The setup wizard will guide you through initial configuration. You can also run with
--no-wizard to skip the wizard and use default settings.Verifying Installation
Once started, you should see:Next Steps
Quick Start Guide
Learn how to configure and use your server
Server Configuration
Customize server.properties and pocketmine.yml
Adding Plugins
Install plugins from Poggit
Docker Guide
Advanced Docker setup and usage