mirror of
https://github.com/immich-app/immich.git
synced 2026-02-04 08:49:01 +03:00
fix: fix docker perms for dev (#21359)
This commit is contained in:
38
Makefile
38
Makefile
@@ -60,20 +60,37 @@ VOLUME_DIRS = \
|
||||
./e2e/node_modules \
|
||||
./docs/node_modules \
|
||||
./server/node_modules \
|
||||
./server/dist \
|
||||
./open-api/typescript-sdk/node_modules \
|
||||
./.github/node_modules \
|
||||
./node_modules \
|
||||
./cli/node_modules
|
||||
|
||||
# create empty directories and chown to current user
|
||||
# Include .env file if it exists
|
||||
-include docker/.env
|
||||
|
||||
# Helper function to chown, on error suggest remediation and exit
|
||||
define safe_chown
|
||||
if chown $(2) $(or $(UID),1000):$(or $(GID),1000) "$(1)" 2>/dev/null; then \
|
||||
true; \
|
||||
else \
|
||||
echo "Permission denied when changing owner of volumes and upload location. Try running 'sudo make prepare-volumes' first."; \
|
||||
exit 1; \
|
||||
fi;
|
||||
endef
|
||||
# create empty directories and chown
|
||||
prepare-volumes:
|
||||
@for dir in $(VOLUME_DIRS); do \
|
||||
mkdir -p $$dir; \
|
||||
done
|
||||
@if [ -n "$(VOLUME_DIRS)" ]; then \
|
||||
chown -R $$(id -u):$$(id -g) $(VOLUME_DIRS); \
|
||||
fi
|
||||
@$(foreach dir,$(VOLUME_DIRS),mkdir -p $(dir);)
|
||||
@$(foreach dir,$(VOLUME_DIRS),$(call safe_chown,$(dir),-R))
|
||||
ifneq ($(UPLOAD_LOCATION),)
|
||||
ifeq ($(filter /%,$(UPLOAD_LOCATION)),)
|
||||
@mkdir -p "docker/$(UPLOAD_LOCATION)"
|
||||
@$(call safe_chown,docker/$(UPLOAD_LOCATION),)
|
||||
else
|
||||
@mkdir -p "$(UPLOAD_LOCATION)"
|
||||
@$(call safe_chown,$(UPLOAD_LOCATION),)
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
MODULES = e2e server web cli sdk docs .github
|
||||
|
||||
@@ -150,8 +167,9 @@ clean:
|
||||
find . -name ".svelte-kit" -type d -prune -exec rm -rf '{}' +
|
||||
find . -name "coverage" -type d -prune -exec rm -rf '{}' +
|
||||
find . -name ".pnpm-store" -type d -prune -exec rm -rf '{}' +
|
||||
command -v docker >/dev/null 2>&1 && docker compose -f ./docker/docker-compose.dev.yml rm -v -f || true
|
||||
command -v docker >/dev/null 2>&1 && docker compose -f ./e2e/docker-compose.yml rm -v -f || true
|
||||
command -v docker >/dev/null 2>&1 && docker compose -f ./docker/docker-compose.dev.yml down -v --remove-orphans || true
|
||||
command -v docker >/dev/null 2>&1 && docker compose -f ./e2e/docker-compose.yml down -v --remove-orphans || true
|
||||
|
||||
|
||||
setup-server-dev: install-server
|
||||
setup-web-dev: install-sdk build-sdk install-web
|
||||
|
||||
Reference in New Issue
Block a user