diff --git a/Dockerfile b/Dockerfile index d292716b..39933fd4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -53,4 +53,7 @@ COPY --from=build /app/build /app/build # copy backend files COPY ./backend . +# Generate a random value to use as a WEBUI_SECRET_KEY in case the user didn't provide one. +RUN echo $(head -c 12 /dev/random | base64) > docker_secret_key + CMD [ "bash", "start.sh"] \ No newline at end of file diff --git a/backend/start.sh b/backend/start.sh index 09a791fc..515e6c93 100755 --- a/backend/start.sh +++ b/backend/start.sh @@ -4,4 +4,9 @@ SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) cd "$SCRIPT_DIR" || exit PORT="${PORT:-8080}" -exec uvicorn main:app --host 0.0.0.0 --port "$PORT" --forwarded-allow-ips '*' +if test -f docker_secret_key && test "$WEBUI_SECRET_KEY" = ""; then + echo Using generated DOCKER_SECRET_KEY + WEBUI_SECRET_KEY=`cat docker_secret_key` +fi + +WEBUI_SECRET_KEY="$WEBUI_SECRET_KEY" exec uvicorn main:app --host 0.0.0.0 --port "$PORT" --forwarded-allow-ips '*'