update: Optimize Dockerfile: improve caching, reduce image size, and … #820
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.
…enhance security
Caching Optimization:
The order of commands has been adjusted to leverage Docker's caching mechanism, ensuring that dependencies are only reinstalled when package.json or pnpm-lock.yaml changes. Production Image Size Reduction:
The final image has been streamlined by copying only essential files from the build stage, resulting in a smaller and more efficient production image. Security Enhancements:
A non-root user is now utilized in the production environment, reducing potential security vulnerabilities. This change helps ensure that the application runs with the least privilege necessary. Documentation and Clarity:
Comments have been added throughout the Dockerfile for better understanding and maintainability, making it easier for future developers to comprehend the purpose of each command.
Description
Refactor Dockerfile: optimize caching strategy, minimize production image size, and improve security by using a non-root user
Type of change
Checklist:
config.yml
file