Skip to content

Conversation

@nitrobass24
Copy link

Summary

This PR fixes the broken Docker image by implementing a complete multi-stage build that properly includes all required components:

  • Angular frontend - Was missing entirely from previous Docker builds
  • scanfs binary - File system scanner now properly built and included
  • Python 3.11 support - Updated from Python 3.8 (EOL October 2024)
  • PUID/PGID permissions - Improved entrypoint script for proper user/group handling

Changes

Dockerfile (complete rewrite)

  • Stage 1: Build Angular frontend with Node 12
  • Stage 2: Build scanfs binary with PyInstaller
  • Stage 3: Python 3.11 runtime with all components assembled

Python (pyproject.toml)

  • Updated Python version constraint from ~3.8 to ^3.8 (allows 3.8-3.12)
  • Updated dev-dependencies format for newer Poetry

Angular

  • package.json: Updated node-sass version for build compatibility
  • tsconfig.json: Added skipLibCheck to resolve type definition conflicts

Entrypoint Script

  • Enhanced PUID/PGID handling for mounted volumes
  • Better error handling and user creation

Documentation

  • Added CHANGELOG.md documenting this release
  • Added MODERNIZATION_PLAN.md with codebase architecture and future roadmap
  • Added docker-compose.dev.yml for easy local development/testing

Testing

  • Built and tested on Docker Desktop (macOS ARM64)
  • Web UI accessible and functional at http://localhost:8800
  • Container starts correctly with PUID/PGID environment variables

Related Issues

This PR addresses several open issues:

Test Plan

  • Build Docker image: docker compose -f docker-compose.dev.yml build
  • Start container: docker compose -f docker-compose.dev.yml up
  • Verify web UI loads at http://localhost:8800
  • Configure remote server and test file sync

🤖 Generated with Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant