Whenever we have packages used locally, they need to be re-installed every time that new versions of the runners are pulled.
Option 1:
Enhance the system for a way to build a local runner whenever the user wants.
When attempting to pull - that is, everytime we start the server - the built runner should not be replaced by the pulled runner.
Option 2:
Put the installed libraries on a volume that would live longer than the docker itself.
Workaround:
Specify the digest in the dockerfile. This makes sure that the whole image will not be rebuilt because of an upstream image change.
For example, use rocker/geospatial:4.4.1 in runners/r-dockerfile
To build the local docker image, run ./.server/prod-server.sh command build runner-r
To launch the server with this image, run ./.server/prod-server.sh command up -d
Once done, stop the server with ./server-down.sh as usual.
Warning: This workaround bypasses the usual server update check. It is a good idea to run ./.server/prod-server.sh command pull once in a while, then resume with step 2 above.
Whenever we have packages used locally, they need to be re-installed every time that new versions of the runners are pulled.
Option 1:
Option 2:
Workaround:
rocker/geospatial:4.4.1
inrunners/r-dockerfile
./.server/prod-server.sh command build runner-r
./.server/prod-server.sh command up -d
./server-down.sh
as usual.Warning: This workaround bypasses the usual server update check. It is a good idea to run
./.server/prod-server.sh command pull
once in a while, then resume with step 2 above.