{"id":17929418,"url":"https://github.com/iximiuz/conman","last_synced_at":"2025-07-09T04:34:31.546Z","repository":{"id":38836348,"uuid":"194925568","full_name":"iximiuz/conman","owner":"iximiuz","description":"Simplistic container manager","archived":false,"fork":false,"pushed_at":"2023-03-07T00:37:23.000Z","size":298,"stargazers_count":115,"open_issues_count":5,"forks_count":17,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-07-02T05:48:44.575Z","etag":null,"topics":["containers","docker","kubernetes","oci-runtime"],"latest_commit_sha":null,"homepage":"https://iximiuz.com/en/posts/conman-the-container-manager-inception/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/iximiuz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-02T19:48:07.000Z","updated_at":"2025-06-19T22:01:26.000Z","dependencies_parsed_at":"2024-06-18T22:43:18.701Z","dependency_job_id":"68bcfe25-b537-4a48-8989-22748221f270","html_url":"https://github.com/iximiuz/conman","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/iximiuz/conman","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iximiuz%2Fconman","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iximiuz%2Fconman/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iximiuz%2Fconman/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iximiuz%2Fconman/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iximiuz","download_url":"https://codeload.github.com/iximiuz/conman/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iximiuz%2Fconman/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264394643,"owners_count":23601340,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["containers","docker","kubernetes","oci-runtime"],"created_at":"2024-10-28T21:09:10.523Z","updated_at":"2025-07-09T04:34:31.529Z","avatar_url":"https://github.com/iximiuz.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# conman - [the] container manager\n\nThe aim of the project is to implement yet another _container manager_. Primarily, for the sake of [self-]education.\nThe _conman_ project is heavily inspired by \u003ca href=\"https://github.com/cri-o/cri-o\"\u003ecri-o\u003c/a\u003e and the ultimate goal is to\nmake _conman_ \u003ca href=\"https://github.com/kubernetes/cri-api/\"\u003eCRI\u003c/a\u003e-compatible. This will allow deploying Kubernetes\nclusters with _conman_ as a container runtime server.\n\nRead more about the project in \u003ca href=\"https://iximiuz.com/en/posts/conman-the-container-manager-inception/\"\u003ethis article\u003c/a\u003e.\n\n## State of the project\nUnder active development. Not even close to _0.1.0_.\n\n## Run it\nSo far the only tested platform is CentOS 7 with `go version go1.16.6 linux/amd64`.\n\nWhile Docker is not needed for conman to work, `docker` command is expected on the dev host for tests to pass.\n\n```bash\ngit clone https://github.com/iximiuz/conman.git\ncd conman\n\n# Build daemon and client\nmake bin/conmand\nmake bin/conmanctl\n\n# Run daemon\nsudo bin/conmand\n\n# Prepare dev data\nmake test/data/rootfs_alpine\n\n# Create containers\nsudo bin/conmanctl container create --image test/data/rootfs_alpine/ cont1 -- sleep 100\nsudo bin/conmanctl container create --image test/data/rootfs_alpine/ cont2 -- sleep 200\n\n# List containers\nsudo bin/conmanctl container list\n\n# Start container \nsudo bin/conmanctl container start \u003ccontainer_id\u003e\n\n# Stop container \nsudo bin/conmanctl container stop \u003ccontainer_id\u003e\n\n# Request container status\nsudo bin/conmanctl container status \u003ccontainer_id\u003e\n\n# Remove container \nsudo bin/conmanctl container remove \u003ccontainer_id\u003e\n```\n\n## Test it\n```bash\n# Unit (not really) tests\nsudo PATH=/usr/local/bin:$PATH make testunit\n\n# Functional tests\n# install jq `yum install jq`\n# install bats https://github.com/bats-core/bats-core \nsudo PATH=/usr/local/bin:$PATH make testfunctional\n\n# OCI runtime shim integration tests\nmake testshimmy\n```\n\n## TODO:\n- acceptance tests\n- shim\n  - interactive containers (exec, stdin/stdout support)\n  - PTY-controlled containers (eg. shell)\n  - attach to a running container\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiximiuz%2Fconman","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiximiuz%2Fconman","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiximiuz%2Fconman/lists"}