FROM python:3.11-bookworm

ENV NB_USER=jovyan \
	NB_UID=1000 \
	HOME=/home/jovyan

RUN adduser \
	--disabled-password \
	--gecos "Default user" \
	--uid ${NB_UID} \
	--home ${HOME} \
	--force-badname \
	${NB_USER}

RUN apt-get update \
&& apt-get dist-upgrade --yes \
&& apt-get install --yes \
	vim \
	htop \
	tini \
	git \
&& apt-get clean

COPY requirements.txt /tmp/requirements.txt
RUN pip install -r /tmp/requirements.txt

WORKDIR ${HOME}
USER ${NB_USER}

EXPOSE 8888
ENTRYPOINT ["tini", "--"]
CMD ["jupyter", "lab"]
