Skip to content

crane: hope Crane can add HTTP3 support  #2061

Open
@qwertroot12345

Description

@qwertroot12345

Description of the bug

When using Crane to connect to some Docker repositories, the connection is reset
hope Crane can add HTTP3 support to avoid this (even if it is not for firewall circumvention, using http3 can improve performance)

Reproduction

Firewall audit causes connection reset:
crane pull -v --insecure proxy.1panel.live/library/nginx 0.tar

Expected behavior

Can download the image file

Additional context

The following effects are seen when running

$ crane pull -v --insecure proxy.1panel.live/library/nginx 0.tar
2025/02/13 10:35:50 --> GET https://proxy.1panel.live/v2/
2025/02/13 10:35:50 GET /v2/ HTTP/1.1
Host: proxy.1panel.live
User-Agent: crane.exe/v0.20.3 go-containerregistry/v0.20.3 Accept-Encoding: gzip 2025/02/13 10:35:50 <-- read tcp 192.168.31.214:63632->172.67.69.152:443: wsarecv: An existing connection was forcibly closed by the remote host. GET https://proxy.1panel.live/v2/ (244.1797ms) 2025/02/13 10:35:50 --> GET http://proxy.1panel.live/v2/ 2025/02/13 10:35:50 GET /v2/ HTTP/1.1 Host: proxy.1panel.live User-Agent: crane.exe/v0.20.3 go-containerregistry/v0.20.3 Accept-Encoding: gzip 2025/02/13 10:35:50 <-- read tcp 192.168.31.214:63633->172.67.69.152:80: wsarecv: An existing connection was forcibly closed by the remote host. GET http://proxy.1panel.live/v2/ (229.2047ms) Error: Get "https://proxy.1panel.live/v2/": read tcp 192.168.31.214:63632->172.67.69.152:443: wsarecv: An existing connection was forcibly closed by the remote host.; Get "http://proxy.1panel.live/v2/": read tcp 192.168.31.214:63633->172.67.69.152:80: wsarecv: An existing connection was forcibly closed by the remote host.

But the mirror site is accessible. Later, I found that when using curl, the following error occurred:

$ curl https://proxy.1panel.live/
curl: (35) Recv failure: Connection reset by peer

$ curl ./curl --http3 https://proxy.1panel.live/
<!doctype html>

.....

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions