Whilst this is somewhat unrelated to the mesos implementation, I think it is generally good practice to have immutable tags on the images, this is something I dislike about docker :)
Whist the gc of old images will eventually become a problem, it will really only be the layer delta that is consumed with each new tag. But I think yes, there would need to be some mechanism to clear out the images in the local registry. ryan On 5 Sep 2014 18:03, "mccraig mccraig" <[email protected]> wrote: > ah, so i will have to use a different tag to update an app > > one immediate problem i can see is that it makes garbage collecting old > docker images from slaves harder : currently i update the image associated > with a tag and restart tasks to update the running app, then occasionally a > cron job to remove all docker images with no tag > > if every updated image has a new tag it will be harder to figure out which > images to remove... perhaps any with no running container, though that > could lead to unnecessary pulls and slower restarts of failed tasks > > :craig > > On 5 Sep 2014, at 08:43, Ryan Thomas <[email protected]> wrote: > > Hey Craig, > > docker run will attempt a pull of the image if it cannot find a matching > image and tag in its local repository. > > So it should only pull on the first run of a given tag. > > ryan > On 5 Sep 2014 17:41, "mccraig mccraig" <[email protected]> wrote: > >> hi tim, >> >> if it doesn't pull on every run, when will it pull ? >> >> :craig >> >> On 5 Sep 2014, at 07:05, Tim Chen <[email protected]> wrote: >> >> Hi Maxime, >> >> It is a very valid concern and that's why I've added a patch that should >> go out in 0.20.1 to not do a docker pull on every run anymore. >> >> Mesos will still try to docker pull when the image isn't available >> locally (via docker inspect), but only once. >> >> The downside ofcourse is that you're not able to automatically get the >> latest tagged image, but I think it's worth while price to may to gain the >> benefits of not depending on registry, able to run local images and more. >> >> Tim >> >> >> On Thu, Sep 4, 2014 at 10:50 PM, Maxime Brugidou < >> [email protected]> wrote: >> >>> Hi, >>> >>> The current Docker integration in 0.20 does a "docker pull" from the >>> registry before running any task. This means that your entire Mesos cluster >>> becomes unusable if the registry goes down. >>> >>> The docs allow you to configure a custom .dockercfg for your tasks to >>> point to a private docker registry. >>> >>> However it is not easy to run an HA docker registry. The docker-registry >>> project recommend using S3 storage buy this is definitely not an option for >>> some people. >>> >>> I know that for regular artifacts, Mesos can use HDFS storage and you >>> can run your HDFS datanodes as Mesos tasks. >>> >>> So even if I attempt to have a docker registry storage in HDFS (which is >>> not supported by docker-registry at the moment), I am stuck on a chicken >>> and egg problem. I want to have as little services outside of Mesos as >>> possible and it is hard to maintain HA services (especially outside of >>> Mesos). >>> >>> Is there anyone running Mesos with Docker in production without S3? I am >>> trying to make all the services outside of Mesos (the "infra" services that >>> are necessary to run Mesos like DNS, Haproxy, Chef server... etc) either HA >>> or not critical for the cluster to run. The docker registry is a new piece >>> of infra outside of Mesos that is critical... >>> >>> Best, >>> Maxime >>> >> >>

