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
>>>
>>
>>

Reply via email to