Hi, I have an issue on Python Dagger SDK, I am currently trying to pull a Docker image from a private registry with authentication.
Here is the script:
@object_type
class OCI:
DOCKER_IMAGE_NAME = "mydockerimage"
def __init__(self, version: str) -> None:
self.version: str = version
@property
def docker_image(self) -> str:
return f"{HARBOR_REGISTRY}/{self.DOCKER_IMAGE_NAME}:{self.version}"
def get_build_env(self) -> dagger.Container:
return (
dag.container()
.from_(address=self.docker_image)
.with_registry_auth(
address=HARBOR_REGISTRY,
username="my-username",
secret=dag.set_secret(name="harbor_token", plaintext="fjdklsqfjlksqokpa"),
)
)
I tried almost everything but everytime I got this output error:
✘ Container.from(address: "harbor.foobar-company.com/mydockerimage:1.0.19"): Container! 0.0s
! failed to resolve image harbor.foobar-company.com/mydockerimage:1.0.19: failed to resolve source metadata for harbor.foobar-company.com/mydockerimage:1.0.19: failed to do request: Head "https://harbor.foobar-company.com/v2/mydockerimage/manifests/1.0.19": notresolvable
✘ remotes.docker.resolver.HTTPRequest 0.0s
! notresolvable
✘ HTTP HEAD 0.0s
! notresolvable
Error: invalid selection for command "build": response from query: input: macifApiExample.build resolve: call function "build": process "/runtime" did not complete successfully: exit code: 1
I try to connect with the same auth on the url https://harbor.foobar-company.com/v2/mydockerimage/manifests/1.0.19 using Postman and got a 200 HTTP Status Code.