Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

CreateImageCmd execute failure and report 500 #2377

Copy link
Copy link
Open
@oslivan

Description

@oslivan
Issue body actions

When I use curl to request creating image as below:

curl --silent \
  -H 'Content-Type: application/octet-stream' \
  --data-binary "@/mnt/c/tmp/redis.tar" \
  "http://localhost:2375/v1.45/images/create?fromSrc=-&repo=test%3Alatest"

it's ok, and then I use dockerjava to create image as below:

public String buildImage(String repository, String source) throws IOException {
        File file = new File(source);

        if(!file.exists()) {
            throw new RuntimeException("File not exist");
        }

        try (InputStream inputStream = new FileInputStream(file)) {
            CreateImageResponse response = client.createImageCmd(repository, inputStream).exec();
            return response.getId();
        }
    }

it's reporting 500, after I trace the request, I found this function:

// com.github.dockerjava.core.DefaultInvocationBuilder
public InputStream post(Object entity) {
        DockerHttpClient.Request request = this.requestBuilder.method(Method.POST).putHeader("content-type", "application/json").bodyBytes(this.encode(entity)).build();
        final DockerHttpClient.Response response = this.execute(request);
        return new FilterInputStream(response.getBody()) {
            public void close() throws IOException {
                try {
                    super.close();
                } finally {
                    response.close();
                }

            }
        };
    }

the param entity is FileInputStream rather than json object, so my image tar can't be sent in binary form, how can i solve this, has anyone encountered this problem?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      Morty Proxy This is a proxified and sanitized view of the page, visit original site.