OCI Images for Minecraft BDS
To run this image:
docker pull ghcr.io/scriptapioss/bedrock-server:latest
docker run -it -e EULA_ACCEPT=true -e PP_ACCEPT=true ghcr.io/scriptapioss/bedrock-server:latest
# OR
podman pull ghcr.io/scriptapioss/bedrock-server:latest
podman run -it -e EULA_ACCEPT=true -e PP_ACCEPT=true ghcr.io/scriptapioss/bedrock-server:latest
This is a list of all server properties and the corresponding
environment variable to configure it. Some take specific
configuration, while others are freeform and will accept any string.
Not some values should be ranges. You can see notes on these
values and some undocumented (but still configurable) settings
in the property-definitions.json file.
| Property Name | ENV | Type | Enums |
|---|---|---|---|
| emit-server-telemetry | EMIT_SERVER_TELEMETRY | bool | truefalse |
| server-name | SERVER_NAME | string | |
| gamemode | GAMEMODE | string | survivalcreativeadventure |
| force-gamemode | FORCE_GAMEMODE | bool | truefalse |
| difficulty | DIFFICULTY | string | easypeacefulnormalhard |
| allow-cheats | ALLOW_CHEATS | bool | truefalse |
| max-players | MAX_PLAYERS | int32 | |
| online-mode | ONLINE_MODE | bool | truefalse |
| allow-list | ALLOW_LIST | bool | truefalse |
| server-port | SERVER_PORT | int32 | |
| server-portv6 | SERVER_PORT_V6 | int32 | |
| enable-lan-visibility | ENABLE_LAN_VISIBILITY | bool | truefalse |
| view-distance | VIEW_DISTANCE | int32 | |
| tick-distance | TICK_DISTANCE | int32 | |
| player-idle-timeout | PLAYER_IDLE_TIMEOUT | int32 | |
| max-threads | MAX_THREADS | int32 | |
| level-name | LEVEL_NAME | string | |
| level-seed | LEVEL_SEED | string | |
| default-player-permission-level | DEFAULT_PLAYER_PERMISSION_LEVEL | string | visitormemberoperator |
| texturepack-required | TEXTUREPACK_REQUIRED | bool | truefalse |
| content-log-file-enabled | CONTENT_LOG_FILE_ENABLED | bool | truefalse |
| compression-threshold | COMPRESSION_THRESHOLD | int32 | |
| compression-algorithm | COMPRESSION_ALGORITHM | string | zlibsnappy |
| server-authoritative-movement | SERVER_AUTHORITATIVE_MOVEMENT | string | server-authclient-authserver-auth-with-rewind |
| player-movement-score-threshold | PLAYER_MOVEMENT_SCORE_THRESHOLD | float | |
| player-movement-action-direction-threshold | PLAYER_MOVEMENT_ACTION_DIRECTION_THRESHOLD | float | |
| player-movement-distance-threshold | PLAYER_MOVEMENT_DISTANCE_THRESHOLD | float | |
| player-movement-duration-threshold-in-ms | PLAYER_MOVEMENT_DURATION_THRESHOLD_IN_MS | int32 | |
| correct-player-movement | CORRECT_PLAYER_MOVEMENT | bool | truefalse |
| server-authoritative-block-breaking | SERVER_AUTHORITATIVE_BLOCK_BREAKING | bool | truefalse |
| chat-restriction | CHAT_RESTRICTION | string | NoneDroppedDisabled |
| disable-player-interaction | DISABLE_PLAYER_INTERACTION | bool | truefalse |
| client-side-chunk-generation-enabled | CLIENT_SIDE_CHUNK_GENERATION_ENABLED | bool | truefalse |
Thanks to the following projects for either documentation, or inspiration on techniques to maintain the server: