Our build process is leaving some performance on the table due to how we're handling our docker images.
We currently use Alpine as our base image. For techincal reasons pip packages for alpine are source-only; no binaries are available. The means we do a lot of compiling.
Binary pip packages are available for debian, so we should switch.
Also, when we moved to quay.io, I simply shoehorned docker.io image mirroring into an existing build step. We really don't need to do that on every build, so we should split it out.
These issues can be resolved by:
- change base image from alpine:3.11 to python:3.7-slim-buster
- limit docker.io => quay.io mirroring to builds fired by cron