36 lines
1.3 KiB
Plaintext
36 lines
1.3 KiB
Plaintext
ARG BASE_TAG=main
|
|
FROM axolotlai/axolotl-uv:$BASE_TAG
|
|
|
|
USER root
|
|
|
|
ENV HF_DATASETS_CACHE="/workspace/data/huggingface-cache/datasets"
|
|
ENV HF_HUB_CACHE="/workspace/data/huggingface-cache/hub"
|
|
ENV HF_HOME="/workspace/data/huggingface-cache/hub"
|
|
ENV HF_HUB_ENABLE_HF_TRANSFER="1"
|
|
|
|
EXPOSE 8888
|
|
EXPOSE 22
|
|
|
|
COPY scripts/cloud-entrypoint.sh /etc/cloud-entrypoint.sh
|
|
COPY scripts/motd /etc/motd
|
|
|
|
RUN uv pip install jupyterlab notebook ipywidgets && \
|
|
jupyter lab clean
|
|
RUN apt update && \
|
|
apt install --yes --no-install-recommends openssh-server tmux iproute2 nvtop && \
|
|
rm -rf /var/cache/apt/archives && \
|
|
rm -rf /var/lib/apt/lists/* && \
|
|
mkdir -p /home/ubuntu/.ssh && \
|
|
chmod 700 /home/ubuntu/.ssh && \
|
|
printf "\n[[ -z \"\$TMUX\" ]] && tty -s && { tmux attach-session -t ssh_tmux || tmux new-session -s ssh_tmux; exit; }\n" >> /home/ubuntu/.bashrc && \
|
|
printf "[ ! -z \"\$TERM\" -a -r /etc/motd ] && cat /etc/motd\n" >> /home/ubuntu/.bashrc && \
|
|
printf "\n[[ -z \"\$AXOLOTL_SKIP_SWITCH\" ]] && exec sudo -u ubuntu AXOLOTL_SKIP_SWITCH=1 -i\n" >> /root/.bashrc && \
|
|
chmod +x /etc/cloud-entrypoint.sh && \
|
|
echo 'set-option -g history-limit 5000' >> /home/ubuntu/.tmux.conf && \
|
|
chown -R ubuntu:ubuntu /home/ubuntu /workspace
|
|
|
|
# USER ubuntu
|
|
|
|
ENTRYPOINT ["/etc/cloud-entrypoint.sh"]
|
|
CMD ["sleep", "infinity"]
|