New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Nydusd accesses Dragonfly in a mirror registry fashion #716
Comments
As per the offline discussion with @changweige and @zyfjeff , nydus can integrate dragonfly in three ways, proxy mode (2) and mirror mode. 1. Proxy ModeProxy mode integration documentation: https://d7y.io/zh/docs/setup/runtime/containerd/proxy/ For https image registry, we need to configure the https decryption certificate for d7y so that it can cache the blob data. 2. Proxy Mode with HTTP schemeThis is a workaround without configuring the certificate:
3. Mirror ModeMirror mode integration documentation: https://d7y.io/zh/docs/setup/runtime/containerd/mirror Currently nydus can only support single mirror (d7y fixed configuration mirror url), but not support dynamic multi-mirrors, a feasible design to support multi-mirrors is as follows: For example, the mirror requirement is:
Then when
Similarly, when This means that the nydus snapshotter should have a configuration of (just a possible config in toml format):
@zyfjeff is implementing feature 2. @sctb512 is implementing feature 3. (nydusd side) @raoxiang1996 is implementing feature 3. (snapshotter side) |
@zyfjeff Is there any progress on this feature, I think it is instrumental when integrating with Dragonlfy. |
Sorry, I haven't implemented it yet, currently, nydus communicates with dragonfly via https, and it just works. |
Thanks for feedback ~ |
I guess you are suggesting using the original HTTP scheme to access the original registry rather than only https? |
Refer to containerd/nydus-snapshotter#178 |
Let's close this issue since related PR has been merged into mainline |
At present, nydusd can only access dragonfly as an HTTP proxy. It has some cons:
My proposal is to support accessing dragonfly as a pull-through cache.
To achieve it:
Furthermore, we can try to configure multiple registries to nydusd when it works globally in snapshotter shared mode
The text was updated successfully, but these errors were encountered: