-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
push image (with warmed base image(OCI format)) to Dockerhub got MANIFEST_INVALID error #2423
Comments
I've just experienced a similar issue building a local development image and pushing it to our own GitLab Registry instance (albeit without the useful error message - I just got I'm not sure how you worked around this @luxurine, but my solution was to build the Ubuntu base image myself:
|
I think this is related to #1836 |
I believe this is a dupe of #1836 which was recently fixed and in the latest kaniko release ( |
I've just tried manifest
step
|
I've also seen this with 1.18.0 and 1.19.0. Seems possibly related to newer issue #2883. We're using GitLab Container Registry and not AWS ECR. |
maybe related/a regression of #2713? |
Ran into this issue on executor-v1.23.2 and recent warmer-latest (doesn't report a version) to a gitlab v16.11.5 container registry. |
@mhio here is a temporary fix you can try:
Warning target image is always in func (c *cachedImage) Manifest() (*v1.Manifest, error) {
if c.mfst == nil {
return c.Image.Manifest()
}
return c.mfst, nil
} -> func (c *cachedImage) Manifest() (*v1.Manifest, error) {
mfst, err := c.Image.Manifest()
if mfst != nil {
return mfst, err
}
return c.mfst, nil
} |
Thanks @luxurine we'll give that a try, disabling the warmed cache was the quick workaround. |
Actual behavior
When push builded image, with base image(ubuntu:20.04) cached by
warmer
, will get error:(If there is no cache for base image, image push is ok)
Expected behavior
Image should be pushed successfully.
Preliminary analysis
It looks like
ubuntu:20.04
use"mediaType": "application/vnd.oci.image.manifest.v1+json"
, but dockerhub expectapplication/vnd.docker.distribution.manifest.v2+json
.The strange thing is, if build without base image cache, pushing image is just ok, I guess reasons could be:
Some proposal:
To Reproduce
Steps to reproduce the behavior:
Additional Information
ref:
docker manifest inspect
doesn't support OCI manifests moby/moby#44898The text was updated successfully, but these errors were encountered: