# tests/battle/Dockerfile.install-test-debian # Debian 12 (bookworm) — the default server distro. glibc, different apt # repo structure from Ubuntu (no `ubuntu-*` meta-packages). # # Build from repo root: # docker build -t keisei-battle-debian:latest -f tests/battle/Dockerfile.install-test-debian . # Run (default: minimal profile): # docker run --rm keisei-battle-debian:latest # Override: # docker run --rm -e PROFILE=full keisei-battle-debian:latest FROM debian:12 ENV DEBIAN_FRONTEND=noninteractive \ LANG=C.UTF-8 \ LC_ALL=C.UTF-8 \ CARGO_HOME=/root/.cargo \ RUSTUP_HOME=/root/.rustup \ PATH=/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin # Baseline deps + rustup-installed stable toolchain. Debian 12 ships # rustc 1.63 (too old for edition = "2024"), so apt-install of rustc is # explicitly NOT enough — same quirk the Ubuntu Dockerfile documents. RUN apt-get update \ && apt-get install -y --no-install-recommends \ bash curl ca-certificates git build-essential \ jq pandoc \ && curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs \ | sh -s -- -y --default-toolchain stable --profile minimal --no-modify-path \ && ln -sf /root/.cargo/bin/cargo /usr/local/bin/cargo \ && ln -sf /root/.cargo/bin/rustc /usr/local/bin/rustc \ && rm -rf /var/lib/apt/lists/* \ && rustc --version && cargo --version WORKDIR /opt/keiseikit COPY . /opt/keiseikit/ COPY tests/battle/verify.sh /usr/local/bin/verify.sh COPY tests/battle/battle-entry.sh /usr/local/bin/battle-entry.sh RUN chmod +x /usr/local/bin/verify.sh \ /usr/local/bin/battle-entry.sh \ /opt/keiseikit/install.sh ENV PROFILE=minimal ENTRYPOINT ["/usr/local/bin/battle-entry.sh"]