Apptainer pull failed to get checksum

167 Views Asked by At

I have access to two systems and want to run the same container on both (as far as possible). The problem is that one only supports charliecloud, the other apptainer.

I found out the best way would be to push the charliecloud image to a gitlab container registry and then pull it using apptainer on the other system.

The problem is I can't get apptainer pull to work (I can pull the image from the repo with charliecloud, so there is no issue with the registry or image itself). I tried both oras and docker protocol (for https it seems I would need to setup a keyserver as root). First I logged in using

apptainer remote login --username foo oras://url/to/gitlab/host

It said it has stored an access token (I did the same thing with docker:// as well). When I then try to execute

apptainer pull image.sif oras://url/to/gitlab/container/registry

I get the error message:

While pulling from oci registry: error fetching image to cache: failed to get checksum for oras://...: while resolving reference: object required

I get the same error message when prepending docker://. Firstly I am not sure what protocol to use. It should be oras:// but is it possible to use apptainer pull with charliecloud images at all? If so, how can I provide a checksum for apptainer?

1

There are 1 best solutions below

0
On

I had the same error. I think the tag of the image from the registry must be added. Even if it is :latest.

Ex: apptainer pull image.sif oras://url/to/gitlab/container/registry:latest