Skip to content
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

Podman support #464

Open
3 tasks done
devurandom opened this issue Sep 16, 2020 · 2 comments
Open
3 tasks done

Podman support #464

devurandom opened this issue Sep 16, 2020 · 2 comments
Assignees

Comments

@devurandom
Copy link

devurandom commented Sep 16, 2020

Do you want to request a feature or report a bug?

Feature

What is the current behavior?

Since Docker is not compatible with modern systems (those running systemd 243 and newer, cf. docker/cli#2104) I run Podman (version 2.0.5) on my system, which is CLI-compatible with Docker if called as docker:

❯ ln -s /usr/bin/podman ~/bin/docker
❯ docker info -f json | jq .version
{
  "APIVersion": 1,
  "Version": "2.0.5",
  "GoVersion": "go1.15",
  "GitCommit": "",
  "BuiltTime": "Mon Aug 31 20:50:43 2020",
  "Built": 1598899843,
  "OsArch": "linux/amd64"
}

However, this is not sufficient to run CircleCI CLI:

❯ circleci build
Docker image digest: sha256:68c7dc342166aad7a45bd9d76ca2dd9015a3161986cf5bf2693fb250b4d11fba
Error: error checking path "/var/run/docker.sock": stat /var/run/docker.sock: no such file or directory

Understandably this does not work, since CircleCI CLI / Picard will try to issue commands to the Docker daemon via its socket, while Podman does not have a daemon (and thus no socket).

What is the expected behavior?

It would be nice if CircleCI CLI had an option to use Podman instead of Docker, both for Picard and also as an executor.

containers/podman#4056 (comment) might provide some hints on how to run containers within containers using Podman.

Which version of the CLI and OS are you using?

I am using Gentoo Linux.

❯ circleci version
0.1.9578+cf6a918 (release)
❯ circleci diagnostic

---
CircleCI CLI Diagnostics
---
Debugger mode: false
Config found: /home/dschridde/.circleci/cli.yml
API host: https://circleci.com
API endpoint: graphql-unstable
OK, got a token.
Trying an introspection query on API... 
Ok.

Did this work in previous versions?

I did not try a current kernel and systemd with an older version of circleci.

@devurandom
Copy link
Author

What is the current behavior?

On a Fedora 32 system I see:

❯ circleci build
Docker image digest: sha256:a5b42b7078a01dc90449e50b10887d5ae2c3263cbce3db9aae800e63cf1d2f3b
docker: Error response from daemon: OCI runtime create failed: this version of runc doesn't work on cgroups v2: unknown.

Which version of the CLI and OS are you using?

I am using Fedora 32.

❯ circleci version
0.1.9578+cf6a918 (release)
❯ circleci diagnostic

---
CircleCI CLI Diagnostics
---
Debugger mode: false
Config found: /home/dschridde/.circleci/cli.yml
API host: https://circleci.com
API endpoint: graphql-unstable
OK, got a token.
Trying an introspection query on API... 
Ok.
Hello, <NAME>.

@abdelDriowya
Copy link
Contributor

Hi @devurandom , thanks for your suggestion.

I will check internally with the team, and get back to you asap

@abdelDriowya abdelDriowya self-assigned this May 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants