-
Notifications
You must be signed in to change notification settings - Fork 167
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #362 from bghira/main
deepfloyd, docker, multi-res validations, aspect ratio rounding knob
- Loading branch information
Showing
33 changed files
with
1,323 additions
and
238 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
# SimpleTuner needs CU118 | ||
FROM nvidia/cuda:11.8.0-runtime-ubuntu22.04 | ||
|
||
# /workspace is the default volume for Runpod & other hosts | ||
WORKDIR /workspace | ||
|
||
# Update apt-get | ||
RUN apt-get update -y | ||
|
||
# Prevents different commands from being stuck by waiting | ||
# on user input during build | ||
ENV DEBIAN_FRONTEND noninteractive | ||
|
||
# Install openssh & git | ||
RUN apt-get install -y --no-install-recommends openssh-server \ | ||
openssh-client \ | ||
git \ | ||
git-lfs | ||
|
||
# Installl misc unix libraries | ||
RUN apt-get install -y wget \ | ||
curl \ | ||
tmux \ | ||
tldr \ | ||
nvtop \ | ||
vim \ | ||
rsync \ | ||
net-tools \ | ||
less \ | ||
iputils-ping \ | ||
7zip \ | ||
zip \ | ||
unzip \ | ||
htop \ | ||
inotify-tools | ||
|
||
# Set up git to support LFS, and to store credentials; useful for Huggingface Hub | ||
RUN git config --global credential.helper store && \ | ||
git lfs install | ||
|
||
# Install Python VENV | ||
RUN apt-get install -y python3.10-venv | ||
|
||
# Ensure SSH access. Not needed for Runpod but is required on Vast and other Docker hosts | ||
EXPOSE 22/tcp | ||
|
||
# Install misc Python & CUDA Libraries | ||
RUN apt-get update -y && apt-get install -y python3 python3-pip libcudnn8 libcudnn8-dev | ||
RUN python3 -m pip install pip --upgrade | ||
|
||
# HF | ||
ARG HUGGING_FACE_HUB_TOKEN | ||
ENV HUGGING_FACE_HUB_TOKEN=$HUGGING_FACE_HUB_TOKEN | ||
ENV HF_HOME=/workspace/huggingface | ||
|
||
RUN pip3 install "huggingface_hub[cli]" | ||
|
||
RUN huggingface-cli login --token "$HUGGING_FACE_HUB_TOKEN" --add-to-git-credential | ||
|
||
# WanDB | ||
ARG WANDB_TOKEN | ||
ENV WANDB_TOKEN=$WANDB_TOKEN | ||
|
||
RUN pip3 install wandb | ||
|
||
RUN wandb login "$WANDB_TOKEN" | ||
|
||
# Clone SimpleTuner | ||
RUN git clone https://github.com/bghira/SimpleTuner --branch release | ||
# RUN git clone https://github.com/bghira/SimpleTuner --branch main # Uncomment to use latest (possibly unstable) version | ||
|
||
# Install SimpleTuner | ||
RUN pip3 install poetry | ||
RUN cd SimpleTuner && python3 -m venv .venv && poetry install --no-root | ||
RUN chmod +x SimpleTuner/train_sdxl.sh | ||
RUN chmod +x SimpleTuner/train_sd2x.sh | ||
|
||
# Copy start script with exec permissions | ||
COPY --chmod=755 docker-start.sh /start.sh | ||
|
||
# Dummy entrypoint | ||
ENTRYPOINT [ "/start.sh" ] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
#!/bin/bash | ||
|
||
# Export useful ENV variables, including all Runpod specific vars, to /etc/rp_environment | ||
# This file can then later be sourced in a login shell | ||
echo "Exporting environment variables..." | ||
printenv | | ||
grep -E '^RUNPOD_|^PATH=|^HF_HOME=|^HUGGING_FACE_HUB_TOKEN=|^_=' | | ||
sed 's/^\(.*\)=\(.*\)$/export \1="\2"/' >>/etc/rp_environment | ||
|
||
# Add it to Bash login script | ||
echo 'source /etc/rp_environment' >>~/.bashrc | ||
|
||
# Vast.ai uses $SSH_PUBLIC_KEY | ||
if [[ $SSH_PUBLIC_KEY ]]; then | ||
PUBLIC_KEY="${SSH_PUBLIC_KEY}" | ||
fi | ||
|
||
# Runpod uses $PUBLIC_KEY | ||
if [[ $PUBLIC_KEY ]]; then | ||
mkdir -p ~/.ssh | ||
chmod 700 ~/.ssh | ||
echo "${PUBLIC_KEY}" >>~/.ssh/authorized_keys | ||
chmod 700 -R ~/.ssh | ||
fi | ||
|
||
# Start SSH server | ||
service ssh start | ||
|
||
# 🫡 | ||
sleep infinity |
Oops, something went wrong.