# Stand-in for the Paper image in panel tests: same user and data directory, a tiny shell loop as "console" (echoes every line,
# exits on "stop"). Contains a symlink that points out of the data directory to test that the panel never follows it.
FROM alpine:3.22
RUN adduser -D -u 10001 mc && mkdir -p /srv/server/world /srv/server/config \
 && echo "hello from the stand-in" > /srv/server/readme.txt \
 && printf 'motd: "Hi"\nslots: 10\n' > /srv/server/config/settings.yml \
 && echo "level-data" > /srv/server/world/level.txt \
 && ln -s /etc /srv/server/evil && ln -s /etc/passwd /srv/server/passwd.txt \
 && chown -R mc /srv/server
USER mc
WORKDIR /srv/server
ENTRYPOINT ["sh", "-c", "while read l; do echo \"echo:$l\"; [ \"$l\" = \"save-all flush\" ] && echo \"Saved the game\"; [ \"$l\" = stop ] && exit 0; done"]
