-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compatibility with Docker CLI #23344
Comments
please provide exact examples of what is needed. How does the docker output look like compared to podman and what keys does the ansible role care about? |
The Ansible module in question wants to read |
You need to use And probably need But $ docker-compose version
Docker Compose version v2.28.1
$ docker-buildx version
github.com/docker/buildx v0.16.0 10c9ff901c1c255b58969dd2ade4789acbbab3bb |
Podman client will say: (i.e. libpod socket) "APIVersion": "5.1.2", Docker client will say: (i.e. compat socket) "Version": "5.1.2", Most likely a Docker client would expect the Docker API version, and not the Podman API version. So you can't really use podman-docker to emulate the docker client, but need to use a real client... i.e. install not |
Yes using the docker client against the podman server might be better in this case. If the tool is trying to use the libpod API version it will not result in something useful and depending on how they handle it cause it to error out anyway. |
Currently they just return errors, rather than trying to support docker-compose or podman APIVersion: if not isinstance(cli_info.get('ClientInfo'), dict):
self.fail('Cannot determine Docker client information. Are you maybe using podman instead of docker?')
for plugin in cli_info['ClientInfo'].get('Plugins') or []: if not isinstance(self._version.get('Server'), dict) or not isinstance(self._version['Server'].get('ApiVersion'), string_types):
self.fail('Cannot determine Docker Daemon information. Are you maybe using podman instead of docker?')
self.docker_api_version_str = to_native(self._version['Server']['ApiVersion']) The error message would be bettter as "Are you maybe using podman client instead of docker client?" |
A friendly reminder that this issue had no activity for 30 days. |
because this had some activity and my problem is related: I have a symlink |
You probably installed the "podman-docker" package, instead of the "docker-ce-cli" (or "moby-engine") package. Note: The real client will say "Docker version".
The first word is just |
So capital d?! - very weird, now tried on Fedora and here it behaves consistently at least - however it has a different minor version (4.9.3 -> 4.9.4). But yes, I checked with |
Feature request description
Currently,
podman version
andpodman info
do not list some of the version information that would be available ondocker version
anddocker info
. It would be nice if this could be addressed, making podman (esp. podman compose) compatible with tools that rely on this, concretely the docker-compose ansible module (ansible-collections/community.docker#891).Suggest potential solution
The output should be compatible to what tools expect from docker commands.
Have you considered any alternatives?
Not using podman when relying on these integrations.
Additional context
No response
The text was updated successfully, but these errors were encountered: