Skip to content

strausmann/minecraft-bedrock-connect

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Minecraft Bedrock Connect

Gitlab Pipeline Status GitLab Issues GitLab License Static Badge Open in Gitpod

Docker Pulls Docker Image Version Docker Image Size latest by date

A simple Docker image that can provide the Minecraft Bedrock Connect service, based on the project Bedrock Connect

Supported tags and respective Dockerfile links

Tags

Tag(s) Description
latest, 2, 2.* latest stable - debian amd64/arm64
beta, -beta. Beta. New features preview or help to test. It could be unstable.
nightly* development build, very unstable

Quick reference

⭐ Features

  • Running Bedrock Connect as a Docker Container
  • Can be used with MySQL Database as backend
  • Configuration via ENV variables
  • Use of the custom_servers via json file possible

Environment Variables

The following arguments can be placed in the startup command to ajust settings:

Argument Description Default Value
BRC_VERSION The Bedrock Connect version is used when the container is started. For example, 1.15 for the Bedrock Connect version 1.15. It does not mean the Minecraft server version. latest
DB_TYPE Database Type (accepts values mysql, postgres, mariadb, or none) mysql
DB_HOST Database Host localhost
DB_DB Database Name bedrock-connect
DB_USER Database Username root
DB_PASS Database Password
AUTO_RECONNECT If true, Make Mysql and MairaDB auto reconnect to the database when disconnected false
SERVER_LIMIT How many servers a new player can have in their serverlist 100
NODB If true, use JSON files for data instead of MySQL false
KICK_INACTIVE If true, players will be kicked after 10 minutes of inactivity with the serverlist UI true
CUSTOM_SERVERS Sets the path to a custom server file, for specifying your servers in the list for all players. See custom servers.
USER_SERVERS If true, players can add and remove servers on the serverlist. If false, the options are hidden. true
FEATURED_SERVERS If true, the featured servers will be displayed in the serverlist. If false, the servers are hidden. true
WHITELIST Specify file containing list of whitelisted players. (Should be a text file with the player names specified on seperate lines)
FETCH_FEATURED_IPS If true, dynamically grab the featured server IPs from the domain names. If false, a file featured_server_ips.json will be generated, containing the hard-coded featured server IPs, and to allow changing them if needed. true
FETCH_IPS If true, dynamically grab the server IPs from domain names, of any server a user is attempting to join. false
LANGUAGE Specify a file containing language customizations. See guide for changing wording.
STORE_DISPLAY_NAMES If true, player displays names will be included in the stored player data. true
PACKET_LIMIT Number of datagram packets each address can send within one tick (10ms) 200
GLOBAL_PACKET_LIMIT Number of all datagrams that will be handled within one tick (10ms) before server starts dropping any incoming data. 100000

🔧 How to Install

The Docker image can be deployed quickly and easily via these two commands, or via Docker compose, see examples below.

💪🏻 Non-Docker

For an installation without Docker, please follow the instructions from Pugmatt

🐳 Docker

# Create a volume
docker volume create bedrock-connect

# Start the container
docker run -d --restart=always -p 19132:19132 -e NODB=true -v bedrock-connect:/data --name bedrock-connect strausmann/minecraft-bedrock-connect:2

Exposed Ports

  • UDP 19132 : the Bedrock server port. NOTE that you must append /udp when exposing the port, such as -p 19132:19132/udp

🐳 Deploying with Docker Compose

---
services:
  bedrockconnect:
    image: strausmann/minecraft-bedrock-connect:2
    restart: always
    environment:
      - NODB=true
      - CUSTOM_SERVERS=/config/serverlist.json
      - SERVER_LIMIT=25
    ports:
      - 19132:19132/udp
    volumes:
      - bedrockconnect:/config

volumes:
  bedrockconnect:
    driver: local

🐳 Deploying with Docker Compose and MySQL Backend

---
services:
  bedrockconnect:
    image: strausmann/minecraft-bedrock-connect:2
    restart: always
    environment:
      - DB_TYPE=mysql
      - DB_HOST=db
      - DB_USER=bedrock
      - DB_PASS=bedrock
      - DB_DB=bedrock
      - CUSTOM_SERVERS=/config/serverlist.json
      - SERVER_LIMIT=25
    ports:
      - 19132:19132/udp
    depends_on:
      - db
    volumes:
      - bedrockconnect:/config

  db:
    image: mariadb:10.6
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=rootpwbedrock
      - MYSQL_PASSWORD=bedrock
      - MYSQL_USER=bedrock
      - MYSQL_DATABASE=bedrock
      - TZ=Europe/Berlin
      - PGID=1000
      - PUID=1000
    ports:
      - 3306:3306
    volumes:
      - bedrockconnect_database:/var/lib/mysql

volumes:
  bedrockconnect:
    driver: local
  bedrockconnect_database:
    driver: local

Volumes

docker volume create bedrock-connect

License

View license information for the software contained in this image.

As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).