Skip to content

Minecraft Bedrock Connect based on Pugmatt/BedrockConnect

License

Notifications You must be signed in to change notification settings

arkancrow/minecraft-bedrock-connect

 
 

Repository files navigation

GitLab Pipeline MIT License Docker latest by date Docker Pulls Docker Automate build Docker Image Size latest by date Open in Gitpod

A simple Docker image that can provide the Minecraft Bedrock Connect service.

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
MYSQL_HOST MySQL Host localhost
MYSQL_DB MySQL Database Name bedrock-connect
MYSQL_USER MySQL Username root
MYSQL_PASS MySQL Password
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

🔧 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/udp -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

---
version: "3.8"

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

---
version: "3.8"

services:
  bedrockconnect: 
    image: strausmann/minecraft-bedrock-connect:2
    restart: always
    environment:
      MYSQL_HOST: "db"
      MYSQL_USER: "bedrock"
      MYSQL_PASS: "bedrock"
      MYSQL_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

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).

About

Minecraft Bedrock Connect based on Pugmatt/BedrockConnect

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 57.3%
  • Dockerfile 30.3%
  • Makefile 12.4%