-
Notifications
You must be signed in to change notification settings - Fork 102
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
Support push/pull images from Kaniko image builder #24
Comments
Thanks Oleg. Could you share the image you're pushing/pulling? I suspect Trow is failing to parse the manifest as v2 for some reason. |
Just to clarify, I suspect what's happening is Trow is being sent a v2 manifest but is rejecting it for some reason and falling back to v1. I can't fix this issue with an example image or manifest. |
Sorry for the delay.
Thanks! |
So the base image being pulled by kaniko in the last log is the same image you pushed in the first step (the greyed out text is identical)? Interesting. I think I'll have to test with kaniko to find this. |
Yes, it was the same image, sorry for the grey areas :) |
New info: So, without deep researching, I would say that something wrong with the registry trow uses :) |
Trow is a registry :) And I'm pretty sure it is a bug in Trow. I think it's failing to parse the image manifest and falling back to v1. To help me debug this it would be great if you could share an image that causes the error. |
I'm going to rename this issue as after looking at the image and playing with Kaniko, it seems the main problem is that Trow doesn't respond in the expected way to some API call by kaniko. I'm not convinced there is a v1/v2 manifest problem (although that might also be a problem). |
So, this was a weird one. Kaniko behaves a bit strangely with pushes (the http logs don't make a lot of sense to me), and this has exposed a bug in some of Trow's underlying libraries. It seems Rocket ships with an old version of hyper, which under certain circumstances will cut off transfers. The mitigation is to turn off keep-alive, which I've done on master. Long-term this will be fixed when Rocket upgrades the version of hyper, or Trow moves to a different framework. The code in master should now work correctly for kaniko and shortly the Docker Hub |
I have successfully installed trow on my kube cluster, built an image externally and pushed it to the registry. But when I try to pull it from the registry (I'm using kaniko to build images inside the cluster) I get this error:
Downloading base image trow.kube-public/blablabla
error building image: unsupported MediaType: "application/vnd.docker.distribution.manifest.v1+json", see google/go-containerregistry#377
The text was updated successfully, but these errors were encountered: