This PR optimizes the Dockerfile by implementing a multi-stage build. The main purpose of these changes is to reduce the image size by separating the build and runtime stages, ensuring only production dependencies are included. This enhances both the performance and security of the final image.
π¨ Changes Made
Converted the Dockerfile to a multi-stage build format.
Separated build and runtime stages.
Installed only production dependencies in the final image.
Reduced the overall image size for faster deployment and efficiency.
β Checklist
Before submitting the PR, please make sure you have completed the following:
[ ] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[ ] I have commented my code, particularly in hard-to-understand areas.
[ ] I have made corresponding changes to the documentation (if applicable).
[x] My changes generate no new warnings.
[x] I have tested it locally and it works fine.
[x] Any dependent changes have been merged and published in downstream modules.
π·οΈ Types of Changes
What type of changes does your code introduce? (Check all that apply)
[x] Bug fix (non-breaking change which fixes an issue) π
[x] New feature (non-breaking change which adds functionality) β¨
[ ] UI enhancement (non-breaking change which enhances UI) π¨
[ ] Documentation update π
π€ Related Issues
Fixes #114.
How should this be tested?
To verify the changes, run the following tests:
[x] Test A: Build the Docker image and ensure it runs correctly.
[x] Test B: Check the final image size and compare it with the previous version.
π Description
This PR optimizes the Dockerfile by implementing a multi-stage build. The main purpose of these changes is to reduce the image size by separating the build and runtime stages, ensuring only production dependencies are included. This enhances both the performance and security of the final image.
π¨ Changes Made
β Checklist
Before submitting the PR, please make sure you have completed the following:
π·οΈ Types of Changes
What type of changes does your code introduce? (Check all that apply)
π€ Related Issues
How should this be tested?
To verify the changes, run the following tests: