cc694e71b4
- Add pyproject.toml with proper metadata and dependency groups - Create multi-stage Dockerfile for backend - Add docker-compose.yml with dev/prod profiles - Create frontend Dockerfile with nginx - Add .dockerignore for optimized builds - Update README with Docker instructions and troubleshooting - Remove requirements.txt in favor of pyproject.toml - Ensure data persistence with Docker volumes
33 lines
1.5 KiB
Markdown
33 lines
1.5 KiB
Markdown
## 1. Python Packaging (pyproject.toml)
|
|
|
|
- [x] 1.1 Create `backend/pyproject.toml` with project metadata, dependencies, and build system
|
|
- [x] 1.2 Migrate all dependencies from `requirements.txt` to `pyproject.toml`
|
|
- [x] 1.3 Add optional dependency groups: `[dev]` for pytest, `[prod]` for gunicorn
|
|
- [x] 1.4 Add console script entry point for `backup-tool` CLI
|
|
- [x] 1.5 Test `pip install -e .` works correctly
|
|
- [x] 1.6 Remove `backend/requirements.txt` or mark as deprecated
|
|
|
|
## 2. Docker Configuration
|
|
|
|
- [x] 2.1 Create `.dockerignore` to optimize build context
|
|
- [x] 2.2 Create `backend/Dockerfile` with multi-stage build (builder + runtime)
|
|
- [x] 2.3 Create `docker-compose.yml` for full stack orchestration
|
|
- [x] 2.4 Add docker-compose profiles for dev (hot reload) and prod modes
|
|
- [x] 2.5 Ensure SQLite database and backups persist across container restarts
|
|
|
|
## 3. Integration and Testing
|
|
|
|
- [x] 3.1 Test Docker image builds successfully from project root
|
|
- [x] 3.2 Test `docker compose up` starts both backend and frontend
|
|
- [x] 3.3 Verify backend hot reload works in development mode
|
|
- [x] 3.4 Verify production mode serves static frontend files
|
|
- [x] 3.5 Run existing test suite inside Docker container
|
|
- [x] 3.6 Test data persistence: create backup, restart containers, verify data exists
|
|
|
|
## 4. Documentation
|
|
|
|
- [x] 4.1 Update `README.md` with Docker installation instructions
|
|
- [x] 4.2 Document environment variables for Docker configuration
|
|
- [x] 4.3 Add troubleshooting section for common Docker issues
|
|
- [x] 4.4 Document both manual and Docker deployment paths
|