fix: Resolve Docker permission issues in development environment
- Create dedicated Dockerfile.backend.dev for development with proper permissions - Set user UID/GID to 1000 (common for development systems) - Create logs and temp directories in Dockerfile before switching user - Use named volumes for logs, temp, and node_modules to maintain permissions - Mount only source files instead of entire backend directory - Remove complex entrypoint script in favor of simple CMD - Add LOG_DIR and TEMP_DIR environment variables This fixes the "Permission denied" errors when creating directories in Docker. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
+15
-5
@@ -8,26 +8,30 @@ services:
|
||||
backend:
|
||||
build:
|
||||
context: ./backend
|
||||
dockerfile: ../docker/Dockerfile.backend
|
||||
dockerfile: ../docker/Dockerfile.backend.dev
|
||||
container_name: minio-webui-backend-dev
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
NODE_ENV: development
|
||||
PORT: 7510
|
||||
LOG_DIR: /app/logs
|
||||
TEMP_DIR: /app/temp
|
||||
env_file:
|
||||
- .env
|
||||
ports:
|
||||
- "7510:7510"
|
||||
volumes:
|
||||
- ./backend:/app
|
||||
- /app/node_modules
|
||||
- ./logs:/app/logs
|
||||
- ./backend/src:/app/src
|
||||
- ./backend/package.json:/app/package.json
|
||||
- ./backend/package-lock.json:/app/package-lock.json
|
||||
- backend-logs:/app/logs
|
||||
- backend-temp:/app/temp
|
||||
- backend-node-modules:/app/node_modules
|
||||
- ~/.mc:/home/nodejs/.mc:ro
|
||||
depends_on:
|
||||
- redis
|
||||
networks:
|
||||
- minio-webui-network
|
||||
command: npm run dev
|
||||
|
||||
frontend:
|
||||
build:
|
||||
@@ -68,6 +72,12 @@ services:
|
||||
volumes:
|
||||
redis-data:
|
||||
driver: local
|
||||
backend-logs:
|
||||
driver: local
|
||||
backend-temp:
|
||||
driver: local
|
||||
backend-node-modules:
|
||||
driver: local
|
||||
|
||||
networks:
|
||||
minio-webui-network:
|
||||
|
||||
Reference in New Issue
Block a user