Create a MAP build script to perform the following actions to complete a MAP docker build
- checkout build branch
- check branch is up to date - no oustanding commits
- check branch name - must be called "release_v"
- Perform pip-audit - ensures no vulnerabilities in the python packages
- perform unit tests
- check documentation version
- run monai-deploy package using appropriate base image (see below)
- base image must be alpine or smaller
- appropriately name intermediate step as as builder step.
Docker bloat minimisation techniques:
- Choose '_alpine' versions of base docker image. do not use 'XXX:latest'
- Ensure .docker_ignore file includes anything un needed in the script eg test images, README's, Documents
- Ensure the requirements.txt file is just for building the app.
- Perform a mutlistage build by installing requirements first as theyre not frequently going to change for minor updates.
- remove caches items for pip at the end of the dockerfile line
- use Slim Toolkit to further minimise the docker containers: https://github.com/slimtoolkit/slim
Create a MAP build script to perform the following actions to complete a MAP docker build
Docker bloat minimisation techniques: