-
Notifications
You must be signed in to change notification settings - Fork 75
fix: persist downloaded node modules #1047
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR enables airgapped deployment by persisting Node.js dependencies in Docker volumes. After the first deployment downloads node modules, subsequent runs can operate without network connectivity by reusing the cached modules.
Key Changes:
- Added persistent volume mount for node_modules in Node-RED service
- Simplified entrypoint configuration by mounting entire node-red directory
- Standardized device_cgroup_rules quote style
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| compose-without-scenescape.yml | Added node-red-node-modules volume mount and declaration |
| compose-scenescape.yml | Added node-red-node-modules volume, simplified volume mounts and entrypoint by mounting full directory, standardized quotes |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
metro-ai-suite/metro-vision-ai-app-recipe/compose-scenescape.yml
Outdated
Show resolved
Hide resolved
| - "c 189:* rmw" | ||
| - "c 209:* rmw" | ||
| - "a 189:* rwm" |
Copilot
AI
Nov 13, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] The quote style change from single quotes to double quotes is inconsistent with the stated purpose of this PR (persisting node modules). This appears to be an unrelated formatting change that should either be part of a separate PR or explained in the description.
vagheshp
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Description
Modify the docker compose file to use a volume mount for storing the downloaded node modules so it only needs network connection for the first deployment. Successive runs will not require network connection and the application can be run completely airgapped.
Fixes #870
Any Newly Introduced Dependencies
Please describe any newly introduced 3rd party dependencies in this change. List their name, license information and how they are used in the project.
How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration
Checklist: