Currently, we build the entire Streamlet Docker image in the same Dockerfile ( ref ).
This is sub-optimal in regards to caching and "final image size".
To improve this aspect we can use a Docker Multistage build that prepares all of the fundamental artifacts/building blocks in one image and simply copy the results to the actual image that will run the Streamlet.
This will improve as well the separation of concerns, creates much fewer layers in the resulting image, and is very likely to help trim the size of the final image.
Currently, we build the entire Streamlet Docker image in the same Dockerfile ( ref ).
This is sub-optimal in regards to caching and "final image size".
To improve this aspect we can use a Docker Multistage build that prepares all of the fundamental artifacts/building blocks in one image and simply copy the results to the actual image that will run the Streamlet.
This will improve as well the separation of concerns, creates much fewer layers in the resulting image, and is very likely to help trim the size of the final image.