Merge pull request #223 from gidzzz/fix-docker-without-volume

This commit is contained in:
Cohee
2023-05-03 11:25:10 +03:00
committed by GitHub
2 changed files with 15 additions and 33 deletions

View File

@@ -23,17 +23,14 @@ COPY . ./
# Copy default chats, characters and user avatars to <folder>.default folder
RUN \
echo "*** Copy default chats, characters and user avatars to <folder>.default folder ***" && \
mv "./public/characters" "./public/characters.default" && \
mv "./public/chats" "./public/chats.default" && \
mv "./public/User Avatars" "./public/User Avatars.default" && \
mv "./public/settings.json" "./public/settings.json.default" && \
IFS="," RESOURCES="characters,chats,User Avatars,settings.json" && \
\
echo "*** Store default $RESOURCES in <folder>.default ***" && \
for R in $RESOURCES; do mv "public/$R" "public/$R.default"; done && \
\
echo "*** Create symbolic links to config directory ***" && \
ln -s "${APP_HOME}/config/characters" "${APP_HOME}/public/characters" && \
ln -s "${APP_HOME}/config/chats" "${APP_HOME}/public/chats" && \
ln -s "${APP_HOME}/config/User Avatars" "${APP_HOME}/public/User Avatars" && \
ln -s "${APP_HOME}/config/settings.json" "${APP_HOME}/public/settings.json"
for R in $RESOURCES; do ln -s "../config/$R" "public/$R"; done && \
mkdir "config"
# Cleanup unnecessary files
RUN \

View File

@@ -1,28 +1,13 @@
#!/bin/sh
# Check if the "characters" directory is empty
if [ -z "$(ls -A /home/node/app/config/characters)" ]; then
echo "Characters directory is empty. Copying default characters."
mv /home/node/app/public/characters.default /home/node/app/config/characters
fi
# Check if the "chats" directory is empty
if [ -z "$(ls -A /home/node/app/config/chats)" ]; then
echo "Chats directory is empty. Copying default chats."
mv /home/node/app/public/chats.default /home/node/app/config/chats/
fi
# Check if the "User Avatars" directory is empty
if [ -z "$(ls -A '/home/node/app/config/User Avatars')" ]; then
echo "User Avatars directory is empty. Copying default user avatars."
mv /home/node/app/public/User\ Avatars.default /home/node/app/config/User\ Avatars/
fi
# Check if the "settings.json" file is not empty
if [ ! -s "/home/node/app/config/settings.json" ]; then
echo "Settings file does not exist. Copying default settings."
mv /home/node/app/public/settings.json.default /home/node/app/config/settings.json
fi
# Initialize missing user files
IFS="," RESOURCES="characters,chats,User Avatars,settings.json"
for R in $RESOURCES; do
if [ ! -e "config/$R" ]; then
echo "Resource not found, copying from defaults: $R"
cp -r "public/$R.default" "config/$R"
fi
done
# Start the server
exec node /home/node/app/server.js
exec node server.js