Open ujala-singh opened 1 month ago
In Harbor, Helm charts are OCI artifacts, not docker images.
@stonezdj I have pushed the helm charts as oci artifacts only, if you can check the very last command and output:
$ helm push ingress-nginx-4.11.1.tgz oci://my-harbor-domain.com/test_project
Pushed: my-harbor-domain.com/test_project/ingress-nginx:4.11.1
Digest: sha256:008edaf9fd3bb5c74a8f73e5dfa9b4409e0c085494d0281592988257578d327
I have observed one more thing that If I delete a project on harbor, its not deleting it on the S3 side.
Try to push another docker image? Delete the artifact just remove it from harbor database, it will not delete it from storage. it is the Garbage collection to remove it from storage.
I tried to push again using below github action:
- name: Build and push docker image
id: docker_build
uses: docker/build-push-action@v6
with:
context: .
file: ./App/Dockerfile
push: true
platforms: linux/amd64,linux/arm64
tags: ${{ secrets.HARBOR_URL }}/${{ secrets.HARBOR_PROJECT }}/${{ github.event.repository.name }}-${{ steps.get_branch.outputs.branch }}:${{ steps.get_version.outputs.version }}
env:
DOCKER_CLIENT_TIMEOUT: 300
COMPOSE_HTTP_TIMEOUT: 300
Now I am able to push and its visible on both the sides S3 as well as Harbor. But on harbor side I am able to see 2 more versions of the images apart from linux/amd64,linux/arm64 these two which does not have any OS Arch.
It could be an artifact accessory generated by build tools such as in-toto. the previous question might be related to the redis cache, you can run the flushdb command in the redis.
Sometimes, my login fails from the github actions and it started happening quite frequently now:
Logging in to Harbor registry...
Error response from daemon: Get "https://harbor-test.dev/v2/": Get "https://harbor-test.dev/service/token?account=admin&client_id=docker&offline_token=true&service=harbor-registry": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers) (Client.Timeout exceeded while awaiting headers)
Login failed.
I have deployed harbor version v2.11.0 in kubernetes. I am using S3 for imageChartStorage with the below config:
With the above config I am able to push the docker images and helm charts successfully in my bucket under the path
/harbor/test/
. But on the UI under project I am only able to see the helm chart not the images. Below errors I am getting in registry pods:This is what I am getting while pushing image from CLI:
This is what I am getting on S3:
This is what I am getting while pushing helm chart from CLI:
But On harbor UI I only see helm chart artifact but no image.