You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I propose that we switch to an image registry client used directly by the controller. I think for the initial implementation we can:
Always resolve tags to SHAs by communicating with image registry
Pull content for tag into an emptyDir volume
i. If the content for a SHA is cached locally, no need to pull again
Unpack content into served filesystem
i. If the desired SHA is already being served, no need to unpack again
Future optimizations could include:
Running full resolve/unpack process in a goroutine, and using a channel to communicate events back to the reconciler to requeue
Rate-limit requests to an image registry (but if a request is rate-limited always put another request in the queue to make sure we don't rest on a stale tag resolution.
Explore cache optimizations (e.g. persistent volume, garbage collection based on LRU + max inactive size)
The text was updated successfully, but these errors were encountered:
There are several issues related to our use of a pod to unpack images:
I propose that we switch to an image registry client used directly by the controller. I think for the initial implementation we can:
i. If the content for a SHA is cached locally, no need to pull again
i. If the desired SHA is already being served, no need to unpack again
Future optimizations could include:
The text was updated successfully, but these errors were encountered: