You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
First, I have a k3s environment using rancher/k3s image and use registry image as private storage. The registry.yaml is configured, the content is as follows:
and the docker-compose.yaml is as follows and run a registry as a pull-through cache.:
For example, when I enter the master node container of the k3s environment, i pull two images in turn.
i) crictl pull image1
ii)crictl pull image2
and then the layers of image1 and image2 will be stored in the docker-compose service(dockerio-registry, the path in the registry container is /var/lib/registry).
Afterwards I can pull the image from the local private storage service(dockerio-registry) in a disconnected environment, these all look fine.
But when some layers of image1 and image2 are common,something unexpected happens.
As shown earlier, I pulled image1 and then image2, some of their layers are shared. When I pull image2, some layers of image1 do not repeat to pull, up to this point it was all as expected.
But in this case, _layers/sha256/ of image2 will be incompleted. No links are created in image2 that are shared with image1 !
I execute the following commands in order:
i) crictl pull image1
ii) crictl pull image2
it works fine.
but if I execute the following commands in order:
i) crictl pull image2
ii) crictl pull image1
it will report that some layers of image2 are missing, can not pull image2 !!!
As shown in the fig:
the sha256:c79bxxx... also exists in image1. So when i pull image2 first, something went wrong!
Also, I try push image to the dockerio-registry.
I execute the following commands in order:
i) ctr images plain-http=true push image1
ii) ctr images plain-http=true push image2
(/var/lib/registry) links will also created in image2 that are shared with image1.
So, I guess there might be a problem with the pull-through cache policy of the registry image.
I hope to get an response, thank you very much!
The text was updated successfully, but these errors were encountered:
First, I have a k3s environment using rancher/k3s image and use registry image as private storage. The registry.yaml is configured, the content is as follows:
![image](https://private-user-images.githubusercontent.com/52699164/249723542-ac1815b0-97dc-480b-b510-31925c1e4810.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjExMTI2OTEsIm5iZiI6MTcyMTExMjM5MSwicGF0aCI6Ii81MjY5OTE2NC8yNDk3MjM1NDItYWMxODE1YjAtOTdkYy00ODBiLWI1MTAtMzE5MjVjMWU0ODEwLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzE2VDA2NDYzMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWM3ZGZkMWNjNTM2NTAwMzAzMDJmNDY2MjMwNTZhNzQ3ZDBlMWQ3YmZjNTIyZGNlM2ZlMTc5NzBhZWQ1ZDU4ZTYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.76MqZI215CZ5TeXrnbnCq4fPaB7ybfVqy0Weum2PHpQ)
and the docker-compose.yaml is as follows and run a registry as a pull-through cache.:
![image](https://private-user-images.githubusercontent.com/52699164/249726659-fa3f427f-8bab-4274-a525-124fc457a5c9.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjExMTI2OTEsIm5iZiI6MTcyMTExMjM5MSwicGF0aCI6Ii81MjY5OTE2NC8yNDk3MjY2NTktZmEzZjQyN2YtOGJhYi00Mjc0LWE1MjUtMTI0ZmM0NTdhNWM5LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzE2VDA2NDYzMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTUyYmZiMjJmMzNmNmJlYjMzZmFiNWFiMGQ0ZmVhZDI3NWM3YWM3YTMzZDViZDhiNzU4MDQ5OWQ5MTU1MjUyMTkmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.yb9_1r5CchxukC7s71En_sif1BspGtPkn3RYiiJL7y4)
For example, when I enter the master node container of the k3s environment, i pull two images in turn.
i) crictl pull image1
ii)crictl pull image2
and then the layers of image1 and image2 will be stored in the docker-compose service(dockerio-registry, the path in the registry container is /var/lib/registry).
Afterwards I can pull the image from the local private storage service(dockerio-registry) in a disconnected environment, these all look fine.
But when some layers of image1 and image2 are common,something unexpected happens.
As shown earlier, I pulled image1 and then image2, some of their layers are shared. When I pull image2, some layers of image1 do not repeat to pull, up to this point it was all as expected.
But in this case, _layers/sha256/ of image2 will be incompleted. No links are created in image2 that are shared with image1 !
I execute the following commands in order:
i) crictl pull image1
![image](https://private-user-images.githubusercontent.com/52699164/249735706-af887fa9-7904-404f-a764-7079ba8e06f7.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjExMTI2OTEsIm5iZiI6MTcyMTExMjM5MSwicGF0aCI6Ii81MjY5OTE2NC8yNDk3MzU3MDYtYWY4ODdmYTktNzkwNC00MDRmLWE3NjQtNzA3OWJhOGUwNmY3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzE2VDA2NDYzMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJjMzZkM2UwNTlhNTY3NjRhOTZjMmQ0ZjQzNTdjNDg1ODRlYjQ4NmM5ZWYwYWRjYjA4ZjdhYzk0NmFkYTQ5ODgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.ohdK9s-bAMA8fGmX-Gga2d20l_gul0461nizFqrsS3M)
ii) crictl pull image2
it works fine.
but if I execute the following commands in order:
i) crictl pull image2
ii) crictl pull image1
it will report that some layers of image2 are missing, can not pull image2 !!!
As shown in the fig:
the sha256:c79bxxx... also exists in image1. So when i pull image2 first, something went wrong!
Also, I try push image to the dockerio-registry.
I execute the following commands in order:
i) ctr images plain-http=true push image1
ii) ctr images plain-http=true push image2
(/var/lib/registry) links will also created in image2 that are shared with image1.
So, I guess there might be a problem with the pull-through cache policy of the registry image.
I hope to get an response, thank you very much!
The text was updated successfully, but these errors were encountered: