# Dockerfile
FROM ubuntu:24.04

# Build-time args
ARG PASSWORD=root
ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /home/ctfuser/chall

RUN apt-get update && \
    apt-get install -y --no-install-recommends \
      make \
      g++ \
      socat \
      build-essential \
      openssh-server \
      bash \
      nano \
      vim \
    && rm -rf /var/lib/apt/lists/*

RUN useradd -m -d /home/ctfuser -s /bin/bash ctfuser && echo "ctfuser:${PASSWORD}" | chpasswd

RUN mkdir -p /var/run/sshd

COPY chall/ /home/ctfuser/chall
COPY ./entrypoint.sh /entrypoint.sh

RUN chmod +x /entrypoint.sh /home/ctfuser/chall/run.sh && \
    chown -R root:root /home/ctfuser/chall && chmod -R 555 /home/ctfuser/chall

EXPOSE 9000 22
CMD ["/entrypoint.sh"]