Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

filename completion on `docker load -i`

Đang mở Phù hợp với người mới
#7,402 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@cra đang làm issue này rồi.

Từ ngày 17/10/2026.

  • #7403 của @cra — đang mở

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
82/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
bash, docker, go
Lĩnh vực
cli

Hướng nghiên cứu

Bắt đầu tại cli/command/image/load.go, nơi docker load -i đăng ký các flag và hành vi hoàn thành của nó. Tái hiện bằng docker __complete load -i '' và so sánh thiết lập hoàn thành với việc hoàn thành phần mở rộng tên tệp được sử dụng bởi docker compose -f. Hoàn tất nghĩa là giá trị của -i hoàn thành tên tệp thay vì trả về ShellCompDirectiveNoFileComp, đồng thời có các bài kiểm thử CLI liên quan bao phủ hành vi này.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

kind/feature status/0-triage
Description

Hi!

Sometimes when testing my containers I ship them between machines first to ensure I didn't miss anything when building the image. I do it by

docker save <image:tag> | gzip > my_image.tar.gz

and then scp it to a vps remote where I load it with

docker load -i my_image.tar.gz

the problem that I noticed is that the tab completion is not working on the load command. I'm pretty sure it's a docker cli isssue not my shell as

$ docker __complete load -i ''                     
:4
Completion ended with directive: ShellCompDirectiveNoFileComp

compared for example for compose

$ docker __complete compose -f ''
yaml
yml
:8
Completion ended with directive: ShellCompDirectiveFilterFileExt

fix suggestion

pretty sure it's in cli/command/image/load.go where the command registers completions

version and info

$ docker version       
Client:
 Version:           29.9.0
 API version:       1.56
 Go version:        go1.27.1-X:nodwarf5
 Git commit:        f415da838b
 Built:             Fri Oct  9 00:19:20 2026
 OS/Arch:           linux/amd64
 Context:           default

Server:
 Engine:
  Version:          29.9.0
  API version:      1.56 (minimum version 1.40)
  Go version:       go1.27.1-X:nodwarf5
  Git commit:       a5b58c94d3
  Built:            Fri Oct  9 00:19:20 2026
  OS/Arch:          linux/amd64
  Experimental:     true
 containerd:
  Version:          v2.4.1
  GitCommit:        f2551031d7276a770f65f98c9b52e57e7dad07e8.m
 runc:
  Version:          1.5.2
  GitCommit:        
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
$ docker info                                         
Client:
 Version:    29.9.0
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc.)
    Version:  0.38.0
    Path:     /usr/lib/docker/cli-plugins/docker-buildx
  compose: Docker Compose (Docker Inc.)
    Version:  5.6.0
    Path:     /usr/lib/docker/cli-plugins/docker-compose

Server:
 Containers: 20
  Running: 4
  Paused: 0
  Stopped: 16
 Images: 122
 Server Version: 29.9.0
 Storage Driver: overlayfs
  driver-type: io.containerd.snapshotter.v1
 Logging Driver: json-file
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
 CDI spec directories:
  /etc/cdi
  /var/run/cdi
 Swarm: inactive
 Runtimes: runc io.containerd.runc.v2
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: f2551031d7276a770f65f98c9b52e57e7dad07e8.m
 runc version: 
 init version: de40ad0
 Security Options:
  seccomp
   Profile: builtin
  cgroupns
 Kernel Version: 7.2.9-arch1-1
 Operating System: Arch Linux
 OSType: linux
 Architecture: x86_64
 CPUs: 12
 Total Memory: 31.07GiB
 Name: pintsize
 ID: 76e4d802-aba2-4177-b4f4-d8eadd9c2ff4
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Experimental: true
 Insecure Registries:
  127.0.0.0/8
  ::1/128
 Live Restore Enabled: false
 Firewall Backend: iptables
  EnableUserlandProxy: true
  UserlandProxyPath: /usr/bin/docker-proxy
Ngôn ngữ chính
Go
Star
6.1k
Fork
2.2k
Merge trung bình
15 giờ 11 phút
Pull request đã merge (30 ngày)
42

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của docker/cli

Tất cả issue của docker/cli

Issue tương tự

Thêm issue về Go

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.