docker-minecraft-bedrock-server: Allow list broken with 1.20.10 update.
Not sure what is happening exactly, but with the 1.20.10 update, I can’t join my server. It says “you are not invited” or something.
Here is my environment variables. I removed the ALLOW_LIST_USERS all together, and I still get rejected from the server.
"environmentVariables": [
{
"name": "LEVEL_NAME",
"value": "bedrock-level-2"
},
{
"name": "DEBUG",
"value": "true"
},
{
"name": "ALLOW_CHEATS",
"value": "false"
},
{
"name": "MEMBERS",
"value": "xxx,yyy,zzz"
},
{
"name": "EULA",
"value": "true"
},
{
"name": "DIFFICULTY",
"value": "easy"
},
{
"name": "GAMEMODE",
"value": "survival"
},
{
"name": "OVERRIDE_SERVER_PROPERTIES",
"value": "true"
},
{
"name": "TZ",
"value": "Europe/Amsterdam"
},
{
"name": "OPS",
"value": "xxx"
},
{
"name": "VERSION",
"value": "LATEST"
},
{
"name": "MAX_PLAYERS",
"value": "10"
}
],
About this issue
- Original URL
- State: open
- Created a year ago
- Comments: 43 (21 by maintainers)
@rjbradleyling here’s the example I use to connect with an iPhone https://github.com/itzg/docker-minecraft-server/blob/master/examples/geyser/docker-compose.yml
Ah! It’s likely this is because of the behavior when only binding a single file instead of a directory. If you bind
allowlist.json
directly the script looks like it overwrites it:jq -c -n --arg users "$allowListUsers" '$users | split(",") | map({"ignoresPlayerLimit":false,"name": .})' > "allowlist.json"
. Assuming that>
does create a new file rather than updating in place this breaks the bind so when the file is updated it doesn’t propagate outside of the container.@itzg The original problem “You are not invited to this server”, stemming from the allowlist changes, has been fixed? If so, can we just use:
? Or is there additional work, as I’ve written below?
@DrFrankensteinUK Here is my exact Portainer config, with some redactions. Basically, ENABLE the allow list, DISABLE the Allow_list_users. When the docker container fires up, attach to the console and manually add folks to the allow list by NAME. I did not have to deal with XUID’s at all. For example: allowlist add sketchyburger
Upon checking the allowlist, both the username and XUID were present without anyone having to log in or having to manually look up the XUID.
I found this site that retrieve xuid from the gametag: https://www.cxkes.me/xbox/xuid
Correct. Instead you need to add your gamer tag to that list.
I notice a strange behavior. With ALLOW_LIST_USERS and ALLOW_LIST=TRUE set, previously the allowed users see “Not Invited” error. After removing allowlist.json and restarting the container, anybody is now allowed to connect with the same ALLOW_LIST_USERS and ALLOW_LIST.
Latest image now tweaks the logic as @ewolkowicz found and it seems to be working for me now.