JupyterLab / Dockerfile
cacodex's picture
Upload 6 files
7bfdb1c verified
Raw
History Blame Contribute Delete
1.54 kB
FROM python:3.11-slim
ARG BESZEL_VERSION=0.18.7
ENV DEBIAN_FRONTEND=noninteractive \
PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1
RUN useradd -m -u 1000 user && \
apt-get update && \
apt-get install -y --no-install-recommends \
bash \
ca-certificates \
curl \
git \
git-lfs \
tini && \
rm -rf /var/lib/apt/lists/* && \
mkdir -p /data/workspace /data/beszel-agent && \
chown -R user:user /data /home/user
USER user
ENV HOME=/home/user \
PATH=/home/user/.local/bin:$PATH \
HF_HOME=/data/.huggingface \
JUPYTER_ROOT_DIR=/data/workspace \
BESZEL_DATA_DIR=/data/beszel-agent \
BESZEL_LISTEN=45876 \
DISABLE_SSH=true \
DOCKER_HOST="" \
SKIP_SYSTEMD=true \
SKIP_GPU=true
WORKDIR $HOME/app
COPY --chown=user requirements.txt ./requirements.txt
RUN python -m pip install --user --no-cache-dir --upgrade pip && \
python -m pip install --user --no-cache-dir -r requirements.txt
RUN mkdir -p "$HOME/.local/bin" && \
curl -fsSL \
"https://github.com/henrygd/beszel/releases/download/v${BESZEL_VERSION}/beszel-agent_Linux_amd64.tar.gz" | \
tar -xz -C /tmp beszel-agent && \
install -m 0755 /tmp/beszel-agent "$HOME/.local/bin/beszel-agent" && \
rm -f /tmp/beszel-agent
COPY --chown=user jupyter_server_config.py ./jupyter_server_config.py
COPY --chown=user start-services.sh ./start-services.sh
RUN chmod +x ./start-services.sh
EXPOSE 7860
ENTRYPOINT ["/usr/bin/tini", "--"]
CMD ["./start-services.sh"]