Standalone Docker

KoboldAI United now has a working official docker available at henk717/koboldai:united . In the spirit of our project, this commit open sources the files used to build the docker. docker-helper.sh is in the main folder, so that it is not overwritten during updates. Instead this file is copied by the Dockerfile and should be updated trough container updates.
This commit is contained in:
Henk 2022-06-28 16:23:21 +02:00
parent cba38bf3e4
commit 33b8cec452
3 changed files with 64 additions and 0 deletions

View File

@ -0,0 +1,8 @@
FROM debian
RUN apt update && apt install wget aria2 git bzip2 -y
RUN git clone https://github.com/henk717/koboldai /opt/koboldai
WORKDIR /opt/koboldai
RUN ./install_requirements.sh cuda
COPY docker-helper.sh /opt/koboldai/docker-helper.sh
EXPOSE 5000/tcp
CMD /opt/koboldai/docker-helper.sh

View File

@ -0,0 +1,9 @@
These are the source files for the official versions of the standalone docker and are provided for completeness.
Using these files you will not use any of the local modifications you make, instead it will use the latest github version of KoboldAI as the basis.
If you wish to run KoboldAI containerised with access to the local directory you can do so using docker-cuda.sh or docker-rocm.sh instead.
We do not support ROCm in the standalone docker as it is intended for cloud deployment on CUDA systems.
If you wish to build a ROCm version instead, you can do so by modifying the Dockerfile and changing the install_requirements.sh from cuda to rocm.
Similarly you need to modify the Dockerfile to specify which branch of KoboldAI the docker is being built for.

View File

@ -0,0 +1,47 @@
#!/bin/bash
cd /opt/koboldai
git pull
#./install_requirements.sh cuda
if [[ ! -v KOBOLDAI_DATADIR ]];then
mkdir /content
KOBOLDAI_DATADIR=/content
fi
mkdir $KOBOLDAI_DATADIR/stories
if [[ ! -v KOBOLDAI_MODELDIR ]];then
mkdir $KOBOLDAI_MODELDIR/models
fi
mkdir $KOBOLDAI_DATADIR/settings
mkdir $KOBOLDAI_DATADIR/softprompts
mkdir $KOBOLDAI_DATADIR/userscripts
#mkdir $KOBOLDAI_MODELDIR/cache
cp -rn stories/* $KOBOLDAI_DATADIR/stories/
cp -rn userscripts/* $KOBOLDAI_DATADIR/userscripts/
cp -rn softprompts/* $KOBOLDAI_DATADIR/softprompts/
rm stories
rm -rf stories/
rm userscripts
rm -rf userscripts/
rm softprompts
rm -rf softprompts/
if [[ ! -v KOBOLDAI_MODELDIR ]];then
rm models
rm -rf models/
#rm cache
#rm -rf cache/
fi
ln -s $KOBOLDAI_DATADIR/stories/ stories
ln -s $KOBOLDAI_DATADIR/settings/ settings
ln -s $KOBOLDAI_DATADIR/softprompts/ softprompts
ln -s $KOBOLDAI_DATADIR/userscripts/ userscripts
if [[ ! -v KOBOLDAI_MODELDIR ]];then
ln -s $KOBOLDAI_MODELDIR/models/ models
#ln -s $KOBOLDAI_MODELDIR/cache/ cache
fi
PYTHONUNBUFFERED=1 ./play.sh --remote --quiet --override_delete --override_rename