Remove Docker dependencies from launcher scripts#9
Merged
bbernstein merged 2 commits intomainfrom Oct 20, 2025
Merged
Conversation
The LacyLights backend now uses SQLite instead of PostgreSQL/Redis in Docker containers, eliminating the need for Docker in development and deployment. Changes: - Removed Docker requirement checks from setup.sh - Removed Docker container startup/shutdown from start.sh and stop.sh - Removed start_database_containers() and check_docker() functions - Updated README.md to reflect SQLite usage instead of Docker - Updated README_APP.md to remove Docker management feature - Simplified installation requirements (Node.js, npm, Git only) This change reduces system requirements, simplifies setup, and aligns the launcher with the current SQLite-based architecture used in Raspberry Pi deployments. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
There was a problem hiding this comment.
Pull Request Overview
This PR removes Docker dependencies from the LacyLights launcher scripts and documentation, transitioning from PostgreSQL/Redis in Docker containers to SQLite for database storage. This simplifies the development setup by eliminating Docker Desktop as a system requirement.
Key Changes:
- Removed all Docker-related functions and checks from setup, start, and stop scripts
- Updated documentation to reflect SQLite usage instead of PostgreSQL/Docker
- Streamlined system requirements from Node.js, npm, Git, and Docker to just Node.js, npm, and Git
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| stop.sh | Removed Docker compose shutdown commands |
| start.sh | Removed Docker checking, database container startup, and cleanup functions |
| setup.sh | Removed Docker requirement validation and database container startup function |
| README_APP.md | Removed Docker management from features and troubleshooting sections |
| README.md | Updated backend description and manual setup instructions to reference SQLite instead of PostgreSQL/Docker |
Comments suppressed due to low confidence (2)
setup.sh:224
- The DATABASE_URL in the default .env file still references PostgreSQL instead of SQLite. This should be updated to use SQLite format (e.g., 'file:./dev.db') to align with the PR's goal of removing PostgreSQL/Docker dependencies.
DATABASE_URL="postgresql://postgres:postgres@localhost:5432/lacylights"
setup.sh:227
- The REDIS_URL configuration is still present in the default .env file. Since this PR removes Docker dependencies including Redis containers, this configuration should either be removed or the PR description should clarify if Redis is still being used (and how it's running without Docker).
# Redis
REDIS_URL="redis://localhost:6379"
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Ensures npm dependencies are installed before starting each service, preventing failures due to missing or outdated packages. Changes: - Added ensure_dependencies() function that checks if node_modules exists - Verifies package-lock.json is in sync with installed dependencies - Automatically runs npm install/npm ci when needed - Integrated dependency checks into start_backend(), start_frontend(), and start_mcp() This prevents issues when: - Code is updated and dependencies change - node_modules is accidentally deleted or corrupted - Running the app for the first time after a git pull 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Removed all Docker dependencies from the launcher scripts and documentation. The LacyLights backend now uses SQLite instead of PostgreSQL/Redis in Docker containers, making setup simpler and eliminating Docker Desktop as a system requirement.
Changes
Scripts Updated:
start_database_containers()functioncheck_docker()andstart_database()functions, plus Docker cleanup codeDocumentation Updated:
Impact
Before: Required Node.js, npm, Git, and Docker Desktop
After: Only requires Node.js, npm, and Git
This aligns the development launcher with the Raspberry Pi deployment architecture, which already uses SQLite without Docker.
Testing
🤖 Generated with Claude Code