BedrockServerTermux

Run a Minecraft Bedrock Dedicated Server on your Android device using Termux and Debian (proot-distro). No root required, free and open source. Features automated setup, version selection, multiple server instances, Box64 translation, and Playit.gg tunneling

View on GitHub

BedrockServerTermux

BedrockServerTermux

License Platform Termux Maintained

Run a Minecraft Bedrock Dedicated Server on your Android device using Termux and Debian (proot-distro).

Table of Contents

Overview

BedrockServerTermux hosts a Minecraft Bedrock Edition server on Android without root access using:

Features

Prerequisites

Installation

Step 1: Set up Debian in Termux

Open Termux and run:

apt update -y && apt upgrade -y
apt install wget -y
wget https://raw.githubusercontent.com/debojitsantra/BedrockServerTermux/refs/heads/main/setup_proot.sh
bash setup_proot.sh

After it finishes, log in to Debian:

pdd

or

proot-distro login debian

Step 2: Set up the server environment

Inside the Debian session:

apt update -y && apt upgrade -y
apt install wget -y
wget https://raw.githubusercontent.com/debojitsantra/BedrockServerTermux/refs/heads/main/setup_env.sh
bash setup_env.sh

The script will ask you to choose a version and install folder, then handle everything automatically — Box64, Playit, server download, and extraction.

Estimated time: 5–10 minutes depending on your connection.

Running the Server

You need two separate Termux sessions.

Session 1 — server:

pdd
cd ~
./run

If you have multiple server folders installed, run will list them and let you choose which one to start.

Session 2 — tunnel:

pdd
playit

Making Your Server Accessible

After running playit, open the displayed URL in a browser, create a free Playit account, claim your tunnel, and share the public address with players.

Server Management

Stop the server:

Type stop in the server session, or press Ctrl+C.

Available console commands:

Full command reference: Minecraft Wiki — Commands

Updating Your Server

cd ~
./update.sh

The update script lets you choose the version and target folder, backs up your worlds automatically, then downloads and extracts the new server files.

Accessing Files

Debian files are at:

/data/data/com.termux/files/usr/var/lib/proot-distro/installed-rootfs/debian

To browse them from a file manager, create a symlink:

ln -s $PREFIX/var/lib/proot-distro/installed-rootfs/debian ~/debian

Then navigate to:

/storage/emulated/0/Android/data/com.termux/files/home/debian

Requires a file manager with Storage Access Framework support (Material Files, Solid Explorer, MiXplorer).

Installing Add-ons

Bedrock uses behavior packs and resource packs. Java mods (.jar) are not supported.

Step 1: Extract the pack

Rename .mcpack to .zip and extract it. The extracted folder must contain manifest.json at the root level.

Step 2: Place packs in server folders

server/
├── behavior_packs/
│   └── MyAddon_BP/
│       └── manifest.json
├── resource_packs/
│   └── MyAddon_RP/
│       └── manifest.json

Do not add extra subfolder levels.

Step 3: Find your world name

grep level-name ~/server/server.properties

Step 4: Enable the behavior pack

nano ~/server/worlds/<level-name>/world_behavior_packs.json
[
  {
    "pack_id": "UUID-FROM-BP-manifest",
    "version": [1, 0, 0]
  }
]

Step 5: Enable the resource pack

nano ~/server/worlds/<level-name>/world_resource_packs.json
[
  {
    "pack_id": "UUID-FROM-RP-manifest",
    "version": [1, 0, 0]
  }
]

The BP and RP UUIDs are different — copy each from their respective manifest.json.

Step 6: Enable experimental features if required

Add to server.properties:

experimental-gameplay=true

Step 7: Restart the server

stop
./run

If the pack loaded correctly you’ll see Pack Stack - <AddonName> in the logs. Pack Stack - None means wrong UUID or missing folder.

Configuration

Edit server settings:

nano ~/server/server.properties

Key options:

Option Description
server-name Server display name
gamemode survival, creative, adventure
difficulty peaceful, easy, normal, hard
max-players Player limit
view-distance Render distance
server-port Default 19132

Save with Ctrl+X, Y, Enter.

Manual world backup:

cd ~/server
tar -czf world_backup_$(date +%Y%m%d).tar.gz worlds/

Troubleshooting

Server crashes immediately

Players can’t connect

Installation fails

Server is slow or laggy

Termux closes unexpectedly

If the issue isn’t listed here, search existing issues or open a new one with your Android version, device model, RAM, and the full error output.

Performance

RAM Players View distance
2–3GB 1–2 4–6
4–6GB 2–5 6–8
8GB+ 5–10 8–10

The server runs through Box64 (x86_64 → ARM64 translation), so CPU usage will be higher than native and some lag is expected compared to PC hosting.

FAQ

Do I need root? No.

Can I run multiple server versions? Yes. The setup and update scripts let you install each version into a separate folder. ./run lists all available servers at startup.

Is my world data safe during updates? The update script backs up your worlds before extracting new files.

Can I run this 24/7? Yes, keep the device plugged in, disable battery optimization for Termux, and use termux-wake-lock.

Can I use plugins? Behavior packs and resource packs are supported. Java plugins (Bukkit/Spigot) are not.

Can I play on the same device? Yes, connect using localhost:19132, but performance will be affected.

Does this work on tablets? Yes, any ARM64 Android device works.

How much data does hosting use? Roughly 50–200 MB per hour with active players.

Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/your-feature
  3. Commit your changes: git commit -m 'Add your feature'
  4. Push to the branch: git push origin feature/your-feature
  5. Open a pull request

Bug reports and documentation improvements are also welcome.

License

GPL-3.0 — see the LICENSE file for details.

Acknowledgments


[Report Bug](https://github.com/debojitsantra/BedrockServerTermux/issues) · [Request Feature](https://github.com/debojitsantra/BedrockServerTermux/issues) · [Documentation](https://debojitsantra.vercel.app/BedrockServerTermux)