I'm deploying to app engine using the custom runtime and Im noticing that when I deploy, app engine will fully re-build my Dockerfile without any caching. This causes deployments to take much longer. I'm not changing my Dockerfile between deploys. Only my application code is changing. Here is my Dockerfile:
FROM ubuntu
EXPOSE 8080
RUN apt-get update
RUN apt-get install -yq python-crypto python-openssl libffi-dev libssl-dev
RUN pip install --upgrade pip
RUN pip install gunicorn==19.4.5
RUN pip install Flask==0.10.1
RUN pip install PyMySQL==0.7.2
RUN pip install alembic==0.8.5
RUN pip install Flask-Migrate==1.8.0
RUN pip install Flask-CORS==2.1.2
RUN pip install PyCrypto==2.6.1
RUN pip install requests==2.9.1
RUN pip install --upgrade cffi
RUN pip install google-api-python-client==1.5.0
RUN pip install gcloud==0.11.0
# Ensure that Python outputs everything that's printed inside
# the application rather than buffering it.
ENV PYTHONUNBUFFERED 1
ADD . /app/
WORKDIR /app
ENTRYPOINT ["gunicorn", "-b", ":8080", "server:app"]
Is there a way to speed up my deploys?