cli icon indicating copy to clipboard operation
cli copied to clipboard

Fix registry prompting when running with `podman`

Open AndesKrrrrrrrrrrr opened this issue 1 year ago • 2 comments

Issue https://github.com/containers/podman/issues/23055 outlines that podman doesn't search the local repository for the dynamically built image. This could be fixed by prefixing the dynamically generated image with localhost/.

Container images should be fully qualified at all times, anyways (see e.g. this RedHat blog).

AndesKrrrrrrrrrrr avatar Aug 12 '24 15:08 AndesKrrrrrrrrrrr

This should already be handled here: https://github.com/devcontainers/cli/blob/fbd8dfe91ec239bb1ca8d6a82bafe45887f0fab8/src/spec-node/containerFeatures.ts#L434

Maybe the check for Podman didn't work. What output do you get from podman -v?

chrmarti avatar Aug 19 '24 11:08 chrmarti

What output do you get from podman -v?

I tried in both podman version 5.0.3 and podman version 5.3.1, and I have the issue described.

zvictor avatar Dec 10 '24 09:12 zvictor

Could the issue be that it is checking for docker first? A lot of the time, podman is installed with a docker wrapper that lies about its identity.

❯ podman -v
podman version 5.4.1
❯ docker -v
docker version 5.4.1

typedrat avatar Apr 20 '25 00:04 typedrat

Why not use docker version and podman version, which give a fuller picture of what is actually running?

docker version
# Client: Docker Engine - Community
#  Version:           28.0.4
#  API version:       1.41 (downgraded from 1.48)
#  Go version:        go1.23.7
#  Git commit:        b8034c0
#  Built:             Tue Mar 25 15:08:36 2025
#  OS/Arch:           linux/amd64
#  Context:           default
# 
# Server: linux/amd64/fedora-41
#  Podman Engine:
#   Version:          5.4.2
#   APIVersion:       5.4.2
#   Arch:             amd64
#   BuildTime:        2025-04-02T00:00:00Z
#   Experimental:     false
#   GitCommit:        be85287fcf4590961614ee37be65eeb315e5d9ff
#   GoVersion:        go1.23.7
#   KernelVersion:    6.13.10-200.fc41.x86_64
#   MinAPIVersion:    4.0.0
#   Os:               linux
#  Conmon:
#   Version:          conmon version 2.1.13, commit: 
#   Package:          conmon-2.1.13-1.fc41.x86_64
#  OCI Runtime (crun):
#   Version:          crun version 1.21
# commit: 10269840aa07fb7e6b7e1acff6198692d8ff5c88
# rundir: /run/user/1000/crun
# spec: 1.0.0
# +SYSTEMD +SELINUX +APPARMOR +CAP +SECCOMP +EBPF +CRIU +LIBKRUN +WASM:wasmedge +YAJL
#   Package:          crun-1.21-1.fc41.x86_64
#  Engine:
#   Version:          5.4.2
#   API version:      1.41 (minimum version 1.24)
#   Go version:       go1.23.7
#   Git commit:       be85287fcf4590961614ee37be65eeb315e5d9ff
#   Built:            Wed Apr  2 00:00:00 2025
#   OS/Arch:          linux/amd64
#   Experimental:     false

podman version
# Client:        Podman Engine
# Version:       5.4.2
# API Version:   5.4.2
# Go Version:    go1.23.7
# Git Commit:    be85287fcf4590961614ee37be65eeb315e5d9ff
# Built:         Wed Apr  2 00:00:00 2025
# Build Origin:  Fedora Project
# OS/Arch:       linux/amd64

Unfortunately, the json output for Podman doesn't have a Client.Platform object

podman version --format=json ; docker version --format=json) | jq '.Client.Platform.Name'   
# null
# "Docker Engine - Community"

AndesKrrrrrrrrrrr avatar Apr 22 '25 10:04 AndesKrrrrrrrrrrr