BeamMP gameplay

Host a BeamMP Dedicated Server

This is the server for the multiplayer mod BeamMP for the game BeamNG.drive. The server is the point through which all clients communicate. You can write Lua mods for the server, with detailed instructions on the BeamMP Wiki.

Hardware Requirements

Here's what you need to run a BeamMP dedicated server.

Economy

Small freeroam, 1-4 players

CPU0.25 cores
RAM512 MB
Storage2 GB

Standard

Community server, 4-10 players

CPU0.5 cores
RAM1 GB
Storage2 GB

Pro

Large public server, 10-20 players

CPU1 core
RAM2 GB
Storage2 GB

Start hosting from your own computer

Run a BeamMP server on your desktop, laptop, VPS, or dedicated machine — GameCP automates Docker setup, resource allocation, and BeamMP configuration instantly. Automatic port forwarding means your friends can connect without touching your router. Start local, scale to a VPS when you're ready.

Get Started FreeNo credit card required

Setup in 4 Steps

Skip the manual installation, port forwarding, and configuration. Install on your own computer and start hosting instantly.

The Manual Way vs. GameCP

Manual Setup

  • Configure 1+ firewall ports and router settings
  • Write systemd service files
  • SSH into server to edit configs
  • Requires a VPS or dedicated server
  • 30-60 minutes if experienced

With GameCP

  • Automatic port forwarding — no router config
  • Host from your own PC, VPS, or dedicated server
  • Docker container with auto-restart
  • Visual config editor in browser
  • Under 5 minutes total

Under the Hood

The full manual process to host a BeamMP dedicated server on a VPS. Or install GameCP on your own computer and skip all of this.

Step 1

Configure & Prepare

Set your server settings, then install Docker, and pull the BeamMP container image.

terminal
# Update system and install Docker
sudo apt update && sudo apt install -y docker.io
sudo systemctl enable --now docker

# Create game server directory
sudo mkdir -p /opt/gameserver

# Pull the container image
docker pull ghcr.io/ptero-eggs/yolks:debian
Step 2

Run the Installation Script

BeamMP uses a custom install script to download and configure the server files.

Installation Script
#!/bin/bash
mkdir -p /opt/gameserver
cd /opt/gameserver

# Remove any old versions
rm -f BeamMP-Server

# Check for latest release & download URLs
LATEST_JSON=$(curl --silent "https://api.github.com/repos/BeamMP/BeamMP-Server/releases/latest")
RELEASES=$(curl --silent "https://api.github.com/repos/BeamMP/BeamMP-Server/releases")
MATCH=$([[ "$(uname -m)" == "x86_64" ]] && echo "Server.debian.12.x86_64" || echo "Server.debian.12.arm64")

if [ -z "${VERSION}" ] || [ "${VERSION}" == "latest" ]; then
    echo -e "Using latest BeamMP server version"
    DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i "${MATCH}" | head -1)
else
    echo -e "Chosen version: ${VERSION}. Verifying from releases..."
    VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .tag_name')
    if [ "${VERSION}" == "${VERSION_CHECK}" ]; then
        DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i "${MATCH}" | head -1)
    else
        echo -e "Version not found. Defaulting to latest release."
        DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i "${MATCH}" | head -1)
    fi
fi

echo -e "Downloading BeamMP-Server from ${DOWNLOAD_URL}"
curl -sSL ${DOWNLOAD_URL} -o BeamMP-Server
chmod +x BeamMP-Server

# Create default configuration file if it doesn't exist
if [ ! -f ServerConfig.toml ]; then
echo "# BeamMP Server Configuration
[General]
Name = 'BeamMP Server'
Port = 30814
AuthKey = ''
LogChat = true
Tags = 'Freeroam'
Debug = false
Private = true
MaxCars = 1
MaxPlayers = 8
Map = '/levels/gridmap_v2/info.json'
Description = 'BeamMP Default Description'
ResourceFolder = 'Resources'

[Misc]
ImScaredOfUpdates = false
SendErrorsShowMessage = true
SendErrors = true" > ServerConfig.toml
fi

echo "Installation completed."
Step 3

Open Firewall Ports

BeamMP requires 1 port to be open for game traffic and queries.

terminal
sudo ufw allow 30814/both
30814/BOTH(PORT)
Step 4

Launch the Server

Start the BeamMP server using the configuration from Step 1.

terminal
docker run -d \
  --name beammp-servers-server \
  -p 30814:30814/both \
  -v /opt/gameserver:/opt/gameserver \
  -w /opt/gameserver \
  ghcr.io/ptero-eggs/yolks:debian \
  ./BeamMP-Server

Or skip all of this

GameCP automates every step above: Docker, port forwarding, startup, and config. Install on your own PC and deploy a BeamMP server in under 5 minutes.

Deploy with GameCP

Ready to Host Your BeamMP Server?

Install GameCP on your own computer and start hosting in minutes. Automatic port forwarding, zero config — your friends connect instantly.

No credit card required · Free tier available · Install local, scale later

Deploy Free