Skip to content

Running "podman images" and "podman images -a" is very slow #17828

@125priyank

Description

@125priyank

Issue Description

Running the podman images and podman images -a command takes a very long time.

Steps to reproduce the issue

Steps to reproduce the issue

  1. Build some images
  2. Run time sudo podman images -a or time sudo podman images
  3. Notice that it takes a very long time.

Describe the results you received

On a machine with many images, it takes 27 seconds.

time sudo podman images
docker.io/library/artools-ishwar.naik.replayprotarfa.0-x86_64_el7                              30921136    237fa8736bf5  9 days ago     1.45 GB
docker.io/library/artools-snalagatla.sfeabuild.0-x86_64_el7                                    30921088    c49b1a3864ee  9 days ago     1.45 GB
docker.io/library/artools-saibhargav.addhwrouting.1-x86_64_el7                                 30918479    ae8302872fcd  9 days ago     1.45 GB
…(I have truncated the output, all 546 images are similar to above)
real    0m26.945s
user    0m53.624s
sys     0m5.651s

sudo podman images -a was too bad, it took 10 minutes

real    10m1.009s
user    21m42.792s
sys     0m51.298s

Describe the results you expected

Something that is a lot faster. Definitely less than or around a second.

podman info output

sudo podman info --debug
host:
  arch: amd64
  buildahVersion: 1.29.0
  cgroupControllers:
  - cpuset
  - cpu
  - io
  - memory
  - pids
  cgroupManager: systemd
  cgroupVersion: v2
  conmon:
    package: conmon-2.1.2-2.el9_0.x86_64
    path: /usr/bin/conmon
    version: 'conmon version 2.1.2, commit: e0466536503076007df1019612603730e4fcecf4'
  cpuUtilization:
    idlePercent: 88.15
    systemPercent: 1.69
    userPercent: 10.16
  cpus: 24
  distribution:
    distribution: '"almalinux"'
    version: "9.0"
  eventLogger: journald
  hostname: mock109.sjc.aristanetworks.com
  idMappings:
    gidmap: null
    uidmap: null
  kernel: 5.10.62-30605143.AroraKernel510.el7.x86_64
  linkmode: dynamic
  logDriver: journald
  memFree: 172953657344
  memTotal: 270364069888
  networkBackend: netavark
  ociRuntime:
    name: crun
    package: crun-1.4.5-2.el9_0.x86_64
    path: /usr/bin/crun
    version: |-
      crun version 1.4.5
      commit: c381048530aa750495cf502ddb7181f2ded5b400
      spec: 1.0.0
      +SYSTEMD +SELINUX +APPARMOR +CAP +SECCOMP +EBPF +CRIU +YAJL
  os: linux
  remoteSocket:
    exists: true
    path: /run/podman/podman.sock
  security:
    apparmorEnabled: false
    capabilities: CAP_NET_RAW,CAP_CHOWN,CAP_DAC_OVERRIDE,CAP_FOWNER,CAP_FSETID,CAP_KILL,CAP_NET_BIND_SERVICE,CAP_SETFCAP,CAP_SETGID,CAP_SETPCAP,CAP_SETUID,CAP_SYS_CHROOT
    rootless: false
    seccompEnabled: true
    seccompProfilePath: /usr/share/containers/seccomp.json
    selinuxEnabled: false
  serviceIsRemote: false
  slirp4netns:
    executable: /bin/slirp4netns
    package: slirp4netns-1.2.0-2.el9_0.x86_64
    version: |-
      slirp4netns version 1.2.0
      commit: 656041d45cfca7a4176f6b7eed9e4fe6c11e8383
      libslirp: 4.4.0
      SLIRP_CONFIG_VERSION_MAX: 3
      libseccomp: 2.5.2
  swapFree: 0
  swapTotal: 0
  uptime: 152h 3m 53.00s (Approximately 6.33 days)
plugins:
  authorization: null
  log:
  - k8s-file
  - none
  - passthrough
  - journald
  network:
  - bridge
  - macvlan
  volume:
  - local
registries:
  search:
  - registry.access.redhat.com
  - registry.redhat.io
  - docker.io
store:
  configFile: /etc/containers/storage.conf
  containerStore:
    number: 0
    paused: 0
    running: 0
    stopped: 0
  graphDriverName: overlay
  graphOptions:
    overlay.mountopt: nodev,metacopy=on
  graphRoot: /var/lib/containers/storage
  graphRootAllocated: 5330653462528
  graphRootUsed: 132277952512
  graphStatus:
    Backing Filesystem: extfs
    Native Overlay Diff: "false"
    Supports d_type: "true"
    Using metacopy: "true"
  imageCopyTmpDir: /var/tmp
  imageStore:
    number: 10310
  runRoot: /run/containers/storage
  transientStore: false
  volumePath: /var/lib/containers/storage/volumes
version:
  APIVersion: 4.4.0
  Built: 1675439377
  BuiltTime: Fri Feb  3 07:49:37 2023
  GitCommit: ""
  GoVersion: go1.19.4
  Os: linux
  OsArch: linux/amd64
  Version: 4.4.0


### Podman in a container

No

### Privileged Or Rootless

Privileged

### Upstream Latest Release

Yes

### Additional environment details

_No response_

### Additional information

The command `sudo podman images` takes so much time when the number of images is high, for a small number of images it is okay.

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/bugCategorizes issue or PR as related to a bug.locked - please file new issue/PRAssist humans wanting to comment on an old issue or PR with locked comments.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions