If you deploy a Dockerfile, EB will re-build the image.
Also, by default, EB will do a `docker pull your-image` on each app version deploy. To disable that, include a Dockerrun.aws.json file with the following:
{ "AWSEBDockerrunVersion": "1", "Image": { "Update": "false" } }
And some more color here: http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create...
EDIT: Also would point out that EB is using Docker's layer/image caching, so a rebuild does use the local cache (but does do the `docker pull` to check remote for any updates)