diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 28a5c4fa9..c60d2fb6f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -18,6 +18,18 @@ docker compose --profile=dev up The app should be available at [http://localhost:4200](http://localhost:4200) +> **Nx state in Docker:** the containers keep their Nx cache and project +> graph in a dedicated `dev-nx` Docker volume, isolated from the host's +> `.nx/` directory. This prevents the Linux/Alpine containers and your +> host (e.g. macOS) from sharing — and corrupting — the same Nx store. To +> reset only the containers' Nx state, run: +> +> ```shell +> docker volume ls -q --filter name='dev-nx$' | xargs docker volume rm -f +> ``` +> +> For a full reset (including the database), use `docker compose down -v`. + ## Migrating an existing checkout from npm to pnpm If you previously worked with npm, run the one-shot migration script from the diff --git a/docker-compose.yml b/docker-compose.yml index 244e9c1e2..839378375 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -31,6 +31,7 @@ services: volumes: - .:/packmind - dev-node_modules:/packmind/node_modules + - dev-nx:/packmind/.nx - dev-nx-sock:/nx-sock environment: <<: *nx-env @@ -114,6 +115,7 @@ services: volumes: - .:/packmind - dev-node_modules:/packmind/node_modules + - dev-nx:/packmind/.nx - dev-corepack-cache:/root/.cache/node/corepack - dev-pnpm-store:/root/.local/share/pnpm @@ -137,6 +139,7 @@ services: volumes: - .:/packmind - dev-node_modules:/packmind/node_modules + - dev-nx:/packmind/.nx - dev-corepack-cache:/root/.cache/node/corepack - dev-pnpm-store:/root/.local/share/pnpm depends_on: @@ -177,6 +180,7 @@ services: volumes: - .:/packmind - dev-node_modules:/packmind/node_modules + - dev-nx:/packmind/.nx - dev-dist:/packmind/dist - dev-tmp:/packmind/tmp - dev-nx-sock:/nx-sock @@ -231,6 +235,7 @@ services: volumes: - .:/packmind - dev-node_modules:/packmind/node_modules + - dev-nx:/packmind/.nx - dev-dist:/packmind/dist - dev-tmp:/packmind/tmp - dev-nx-sock:/nx-sock @@ -276,6 +281,7 @@ services: volumes: - .:/packmind - dev-node_modules:/packmind/node_modules + - dev-nx:/packmind/.nx - dev-dist:/packmind/dist - dev-tmp:/packmind/tmp - dev-nx-sock:/nx-sock @@ -297,6 +303,7 @@ services: volumes: dev-nx-sock: + dev-nx: dev-postgres-data: dev-redis-data: dev-pgadmin: diff --git a/downgrade_node22.sh b/downgrade_node22.sh index 480da3001..c7c32d621 100755 --- a/downgrade_node22.sh +++ b/downgrade_node22.sh @@ -10,6 +10,9 @@ echo "⏹️ Arrêt des containers Docker..." docker compose down echo "🗑️ Suppression des volumes Docker dev-nx-sock et dev-node_modules..." docker volume rm dev-nx-sock dev-node_modules 2>/dev/null || true +echo "🗑️ Suppression du volume Nx des containers (dev-nx)..." +nx_volumes="$(docker volume ls -q --filter name='dev-nx$')" +[ -n "$nx_volumes" ] && docker volume rm -f $nx_volumes 2>/dev/null || true # 2. Reset Nx (tant que node_modules et .nx existent encore) echo "" diff --git a/migrate_node24.sh b/migrate_node24.sh index 3a28fc793..8c0392f05 100755 --- a/migrate_node24.sh +++ b/migrate_node24.sh @@ -10,6 +10,9 @@ echo "⏹️ Arrêt des containers Docker..." docker compose down echo "🗑️ Suppression des volumes Docker dev-nx-sock et dev-node_modules..." docker volume rm dev-nx-sock dev-node_modules 2>/dev/null || true +echo "🗑️ Suppression du volume Nx des containers (dev-nx)..." +nx_volumes="$(docker volume ls -q --filter name='dev-nx$')" +[ -n "$nx_volumes" ] && docker volume rm -f $nx_volumes 2>/dev/null || true # 2. Reset Nx (tant que node_modules et .nx existent encore) echo ""