[Docker] Fix

- changed seperate vol. for characters, chats, ... to single config vol.
- settings.json is now persistent
Fixes #1
This commit is contained in:
Mindus
2023-01-30 13:11:41 +01:00
parent 18732874dc
commit 52ee6eaa1d
3 changed files with 24 additions and 16 deletions

View File

@@ -20,7 +20,17 @@ RUN \
echo "*** Copy default chats, characters and user avatars to <folder>.default folder ***" && \ echo "*** Copy default chats, characters and user avatars to <folder>.default folder ***" && \
mv "./public/characters" "./public/characters.default" && \ mv "./public/characters" "./public/characters.default" && \
mv "./public/chats" "./public/chats.default" && \ mv "./public/chats" "./public/chats.default" && \
mv "./public/User Avatars" "./public/User Avatars.default" mv "./public/User Avatars" "./public/User Avatars.default" && \
mv "./public/settings.json" "./public/settings.json.default" && \
echo "*** Create empty folders ***" && \
mkdir "./public/characters" && \
mkdir "./public/chats" && \
mkdir "./public/User Avatars" && \
echo "*** Create symbolic links to config directory ***" && \
ln -s "./config/characters" "./public/characters" && \
ln -s "./config/chats" "./public/chats" && \
ln -s "./config/User Avatars" "./public/User Avatars" && \
ln -s "./config/settings.json" "./public/settings.json"
# Cleanup unnecessary files # Cleanup unnecessary files
RUN \ RUN \

View File

@@ -8,7 +8,5 @@ services:
ports: ports:
- "8000:8000" - "8000:8000"
volumes: volumes:
- "./config/characters:/home/node/app/public/characters" - "./config:/home/node/app/config"
- "./config/chats:/home/node/app/public/chats"
- "./config/User Avatars:/home/node/app/public/User Avatars"
restart: unless-stopped restart: unless-stopped

View File

@@ -1,27 +1,27 @@
#!/bin/sh #!/bin/sh
# Check if the "characters" directory is empty # Check if the "characters" directory is empty
if [ -z "$(ls -A /home/node/app/public/characters)" ]; then if [ -z "$(ls -A /home/node/app/config/characters)" ]; then
echo "Characters directory is empty. Copying default characters." echo "Characters directory is empty. Copying default characters."
mkdir /home/node/app/public/characters mv /home/node/app/public/characters.default /home/node/app/config/characters
mv /home/node/app/public/characters.default/* /home/node/app/public/characters/
rm -rf /home/node/app/public/characters.default
fi fi
# Check if the "chats" directory is empty # Check if the "chats" directory is empty
if [ -z "$(ls -A /home/node/app/public/chats)" ]; then if [ -z "$(ls -A /home/node/app/config/chats)" ]; then
echo "Chats directory is empty. Copying default chats." echo "Chats directory is empty. Copying default chats."
mkdir /home/node/app/public/chats mv /home/node/app/public/chats.default /home/node/app/config/chats/
mv /home/node/app/public/chats.default/* /home/node/app/public/chats/
rm -rf /home/node/app/public/chats.default
fi fi
# Check if the "User Avatars" directory is empty # Check if the "User Avatars" directory is empty
if [ -z "$(ls -A '/home/node/app/public/User Avatars')" ]; then if [ -z "$(ls -A '/home/node/app/config/User Avatars')" ]; then
echo "User Avatars directory is empty. Copying default user avatars." echo "User Avatars directory is empty. Copying default user avatars."
mkdir /home/node/app/public/User\ Avatars mv /home/node/app/public/User\ Avatars.default /home/node/app/config/User\ Avatars/
mv /home/node/app/public/User\ Avatars.default/* /home/node/app/public/User\ Avatars/ fi
rm -rf /home/node/app/public/User\ Avatars.default
# 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 fi
# Start the server # Start the server