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
The Image.create method performs a POST request to the /images/create API and then queries the images//json API for the requested image.
The /images/create endpoint is problematic(as explained here).
In cases when there is not enough disk space to save the requests image to disk, the API will return 200 and will start streaming the downloading process status as an HTTP response with Transfer-Encoding: chunked. The only way to know the operation failed for this reason is to check for the specific string error message in the response content.
Querying the images//json API after that will return a 404 which is misleading as the underlying root problem is that there is not enough disk space and not anything related to the image missing from the docker registry.
The Excon client does handle the chunked response that returns from /images/create well, so a suggested solution could be saving the response that returns from the POST: response = conn.post( '/images/create', opts, :headers => headers, :response_block => response_block(body, &block) )
And then check something like: response.body().include? "no space left on device"
The text was updated successfully, but these errors were encountered:
The Image.create method performs a POST request to the /images/create API and then queries the images//json API for the requested image.
The /images/create endpoint is problematic(as explained here).
In cases when there is not enough disk space to save the requests image to disk, the API will return 200 and will start streaming the downloading process status as an HTTP response with Transfer-Encoding: chunked. The only way to know the operation failed for this reason is to check for the specific string error message in the response content.
Querying the images//json API after that will return a 404 which is misleading as the underlying root problem is that there is not enough disk space and not anything related to the image missing from the docker registry.
The Excon client does handle the chunked response that returns from /images/create well, so a suggested solution could be saving the response that returns from the POST:
response = conn.post( '/images/create', opts, :headers => headers, :response_block => response_block(body, &block) )
And then check something like:
response.body().include? "no space left on device"
The text was updated successfully, but these errors were encountered: