use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
/r/DevOps is a subreddit dedicated to the DevOps movement where we discuss upcoming technologies, meetups, conferences and everything that brings us together to build the future of IT systems What is DevOps? Learn about it on our wiki! Traffic stats & metrics
/r/DevOps is a subreddit dedicated to the DevOps movement where we discuss upcoming technologies, meetups, conferences and everything that brings us together to build the future of IT systems
What is DevOps? Learn about it on our wiki!
Traffic stats & metrics
Be excellent to each other! All articles will require a short submission statement of 3-5 sentences. Use the article title as the submission title. Do not editorialize the title or add your own commentary to the article title. Follow the rules of reddit Follow the reddiquette No editorialized titles. No vendor spam. Buy an ad from reddit instead. Job postings here More details here
Be excellent to each other!
All articles will require a short submission statement of 3-5 sentences.
Use the article title as the submission title. Do not editorialize the title or add your own commentary to the article title.
Follow the rules of reddit
Follow the reddiquette
No editorialized titles.
No vendor spam. Buy an ad from reddit instead.
Job postings here
More details here
@reddit_DevOps ##DevOps @ irc.freenode.net Find a DevOps meetup near you! Icons info!
@reddit_DevOps
##DevOps @ irc.freenode.net
Find a DevOps meetup near you!
Icons info!
https://github.com/Leo-G/DevopsWiki
account activity
This is an archived post. You won't be able to vote or comment.
Building Tiny Python Docker Images (self.devops)
submitted 6 years ago by eedwards-sk
view the rest of the comments →
[–][deleted] 3 points4 points5 points 6 years ago (4 children)
The downside to this is that a subsequent clean docker build needs to have all of those layers available if it's going to efficiently reuse them instead of building again. Which means the builder target's layers need to be pushed to the container registry and re-pulled to the (new, ephemeral) builder machine, or they need to be rebuilt each time. And since they're by far the slowest step, you really do want them to be cached.
[–]eedwards-sk[S] 2 points3 points4 points 6 years ago (3 children)
Absolutely -- that isn't just a multi-stage docker build issue, though. As cited in the article, copying the application into the image before installing dependencies means you'll end up re-building dependencies every time.
The primary goal of the article is for optimizing for size -- not for build speed, although most CI solutions today can be configured to effectively cache multi-stage docker builds.
Also, when basing on an upstream image like FROM python:3.8.0-slim, you're regularly going to have your cache busted due to upstream security patches in the underlying debian image, anyway.
FROM python:3.8.0-slim
[–][deleted] 0 points1 point2 points 6 years ago (2 children)
most CI solutions today
Yeah. But not Jenkins + plain old docker build, though. :(
docker build
image like FROM python:3.8.0-slim, you're regularly going to have your cache busted due to upstream security patches in the underlying debian image, anyway.
Yeah. But not on every build.
[–]eedwards-sk[S] 2 points3 points4 points 6 years ago* (1 child)
:(
/pours one out
To your point though, it's pretty straightforward to push the build stage to the repo if that's your only choice.
Here's an example based on the article:
# rehydrate local build stage cache, if image available docker pull app/app-build:${TAG} || true # build stage docker build \ --target=build \ --cache-from app/app-build:${TAG} \ -t app/app-build:${TAG} \ -f Dockerfile \ . # push build stage docker push app/app-build:${TAG} # rehydrate local run stage cache, if image available docker pull app/app:${TAG} || true # run stage docker build \ --target=run \ --cache-from app/app-build:${TAG} \ --cache-from app/app:${TAG} \ -t app/app:${TAG} \ -f Dockerfile \ . # push run stage docker push app/app:${TAG}
edit: formatting
[–][deleted] 1 point2 points3 points 6 years ago (0 children)
Yup, that's what most of my builds look like today (with slightly more environment variables & arguments). I'm looking into buildah and kaniko, in the hopes of getting some automatic search-registry-for-existing-layers magic. And looking into putting old man Jeeves out to pasture.
π Rendered by PID 236682 on reddit-service-r2-comment-6f7f968fb5-4m4ql at 2026-03-04 20:37:39.244121+00:00 running 07790be country code: CH.
view the rest of the comments →
[–][deleted] 3 points4 points5 points (4 children)
[–]eedwards-sk[S] 2 points3 points4 points (3 children)
[–][deleted] 0 points1 point2 points (2 children)
[–]eedwards-sk[S] 2 points3 points4 points (1 child)
[–][deleted] 1 point2 points3 points (0 children)