diff --git a/Dockerfile b/Dockerfile index 4d3e2655f2..e0dabc470f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -215,15 +215,7 @@ RUN windmill cache ${APP}/hubPaths.json && rm ${APP}/hubPaths.json && chmod -R 7 # Create a non-root user 'windmill' with UID and GID 1000 RUN addgroup --gid 1000 windmill && \ adduser --disabled-password --gecos "" --uid 1000 --gid 1000 windmill - -RUN cp -r /root/.cache /home/windmill/.cache - -RUN mkdir -p /tmp/windmill/logs && \ - mkdir -p /tmp/windmill/search - -RUN chown -R windmill:windmill ${APP} && \ - chown -R windmill:windmill /tmp/windmill && \ - chown -R windmill:windmill /home/windmill/.cache +RUN cp -r /root/.cache /home/windmill/.cache && chown -R windmill:windmill /home/windmill/.cache USER root diff --git a/backend/src/main.rs b/backend/src/main.rs index aec045c8f3..a33752965e 100644 --- a/backend/src/main.rs +++ b/backend/src/main.rs @@ -494,10 +494,15 @@ Windmill Community Edition {GIT_VERSION} let (base_internal_tx, base_internal_rx) = tokio::sync::oneshot::channel::(); - DirBuilder::new() - .recursive(true) - .create("/tmp/windmill") - .expect("could not create initial server dir"); + for dir in ["/tmp/windmill", "/tmp/windmill/logs"] { + create_dir_all(dir) + .expect(&format!("could not create directory {}", dir)); + } + + if indexer_mode { + create_dir_all("/tmp/windmill/search") + .expect("could not create search directory"); + } #[cfg(feature = "tantivy")] let should_index_jobs = mode == Mode::Indexer || mode_and_addons.indexer;