Together with @vadimt-spg discussed how to tune current version of Dockerfile.
See our thoughts below.
As first step we can split current image into two. One is dreamfactory-base and will contain all the dependencies. This adds two benefits:
potentially faster build time for end customers;
fault tolerant since the dependencies are installed once on build time by DockerHub. This prevents customers from facing version update issues like we saw recently with V8. Meaning that end customers won't install the dependencies. Instead they will simply pull the base image;
@vadimt-spg should also research how to squash the layers to make the image more efficient.
Another improvement could be to reuse installation script for Ubuntu (after it's ready) instead of manually installing the dependencies in Dockerfile. This brings much more consistency since we will have a single point of failure. Also any change in dependencies will happen in single file instead of modifying both Install Script and Dockerfile.
Together with @vadimt-spg discussed how to tune current version of Dockerfile. See our thoughts below.
As first step we can split current image into two. One is
dreamfactory-base
and will contain all the dependencies. This adds two benefits:Another improvement could be to reuse installation script for Ubuntu (after it's ready) instead of manually installing the dependencies in Dockerfile. This brings much more consistency since we will have a single point of failure. Also any change in dependencies will happen in single file instead of modifying both Install Script and Dockerfile.