diff --git a/.dockerignore b/.dockerignore index daf6041ae..e4995fe58 100644 --- a/.dockerignore +++ b/.dockerignore @@ -4,6 +4,7 @@ npm-debug.log readme* Start.bat /dist -/backups/ +/backups cloudflared.exe access.log +/data diff --git a/.gitignore b/.gitignore index 64b33ddb2..d6a5061bb 100644 --- a/.gitignore +++ b/.gitignore @@ -25,6 +25,7 @@ public/stats.json /docker/config /docker/user /docker/extensions +/docker/data .DS_Store public/settings.json /thumbnails diff --git a/Dockerfile b/Dockerfile index efae20b0e..64a92173a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:19.1.0-alpine3.16 +FROM node:lts-alpine3.18 # Arguments ARG APP_HOME=/home/node/app @@ -26,19 +26,9 @@ COPY . ./ # Copy default chats, characters and user avatars to .default folder RUN \ - IFS="," RESOURCES="assets,backgrounds,user,context,instruct,QuickReplies,movingUI,themes,characters,chats,groups,group chats,User Avatars,worlds,OpenAI Settings,NovelAI Settings,KoboldAI Settings,TextGen Settings" && \ - \ - echo "*** Store default $RESOURCES in .default ***" && \ - for R in $RESOURCES; do mv "public/$R" "public/$R.default"; done || true && \ - \ - echo "*** Create symbolic links to config directory ***" && \ - for R in $RESOURCES; do ln -s "../config/$R" "public/$R"; done || true && \ - \ - rm -f "config.yaml" "public/settings.json" || true && \ + rm -f "config.yaml" || true && \ ln -s "./config/config.yaml" "config.yaml" || true && \ - ln -s "../config/settings.json" "public/settings.json" || true && \ - mkdir "config" || true && \ - mkdir -p "public/user" || true + mkdir "config" || true # Cleanup unnecessary files RUN \ diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index d96c21fe4..2f1f68676 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -8,7 +8,6 @@ services: ports: - "8000:8000" volumes: - - "./extensions:/home/node/app/public/scripts/extensions/third-party" - "./config:/home/node/app/config" - - "./user:/home/node/app/public/user" + - "./data:/home/node/app/data" restart: unless-stopped diff --git a/docker/docker-entrypoint.sh b/docker/docker-entrypoint.sh index bafbdaf62..6432f40c1 100644 --- a/docker/docker-entrypoint.sh +++ b/docker/docker-entrypoint.sh @@ -1,38 +1,14 @@ #!/bin/sh -# Initialize missing user files -IFS="," RESOURCES="assets,backgrounds,user,context,instruct,QuickReplies,movingUI,themes,characters,chats,groups,group chats,User Avatars,worlds,OpenAI Settings,NovelAI Settings,KoboldAI Settings,TextGen Settings" -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 - if [ ! -e "config/config.yaml" ]; then echo "Resource not found, copying from defaults: config.yaml" cp -r "default/config.yaml" "config/config.yaml" fi -if [ ! -e "config/settings.json" ]; then - echo "Resource not found, copying from defaults: settings.json" - cp -r "default/settings.json" "config/settings.json" -fi - CONFIG_FILE="config.yaml" echo "Starting with the following config:" cat $CONFIG_FILE -if grep -q "listen: false" $CONFIG_FILE; then - echo -e "\033[1;31mThe listen parameter is set to false. If you can't connect to the server, edit the \"docker/config/config.yaml\" file and restart the container.\033[0m" - sleep 5 -fi - -if grep -q "whitelistMode: true" $CONFIG_FILE; then - echo -e "\033[1;31mThe whitelistMode parameter is set to true. If you can't connect to the server, edit the \"docker/config/config.yaml\" file and restart the container.\033[0m" - sleep 5 -fi - # Start the server -exec node server.js +exec node server.js --listen diff --git a/start.sh b/start.sh index 4b96b1c3d..23bf5b87d 100755 --- a/start.sh +++ b/start.sh @@ -21,12 +21,6 @@ then esac fi -# if running on replit patch whitelist -if [ ! -z "$REPL_ID" ]; then - echo -e "Running on Repl.it... \nPatching Whitelist..." - sed -i 's|whitelistMode = true|whitelistMode = false|g' "config.conf" -fi - echo "Installing Node Modules..." export NODE_ENV=production npm i --no-audit --no-fund --quiet --omit=dev