COPY requirements.txt ./
RUN pip install -r requirements.txt
If you're building the image on a CI server, docker can't cache that step because the files won't match the cache due to timestamps/permissions/etc... The same is true for other developer's machines.This is a problem if your requirements includes anything that uses C extensions, like mysql/postgresql libs or PIL.