Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Docker
  3. contajners

contajners

MITClojure1.0.8

An idiomatic, data-driven, REPL-friendly Clojure client for OCI-compliant container engines like Docker and Podman.

Visit WebsiteGitHubGitHub
148 stars8 forks0 contributors

What is contajners?

Contajners is an idiomatic Clojure client for OCI-compliant container engines like Docker and Podman. It provides a data-driven, REPL-friendly API that allows developers to manage containers, images, and other resources programmatically from Clojure code. The library solves the problem of interacting with container engines in a way that feels native to Clojure, avoiding external tooling or cumbersome wrappers.

Target Audience

Clojure developers and DevOps engineers who need to automate container management tasks, build containerized applications, or integrate Docker/Podman operations into Clojure-based tooling and pipelines.

Value Proposition

Developers choose Contajners for its idiomatic Clojure design, which offers a more seamless and expressive alternative to generic Docker clients. Its REPL-friendly approach enables interactive debugging and exploration, while support for both Docker and Podman provides flexibility across different container ecosystems.

Overview

An idiomatic, data-driven, REPL friendly clojure client for OCI container engines

Use Cases

Best For

  • Automating Docker/Podman operations from Clojure scripts
  • Building Clojure-based DevOps tools for container orchestration
  • Interactive container management and debugging via the REPL
  • Creating data-driven pipelines for container image builds
  • Integrating container engine APIs into Clojure web applications
  • Replacing clj-docker-client with a more idiomatic alternative

Not Ideal For

  • Projects requiring immediate access to the latest Docker Engine API features upon release
  • Teams working in non-Clojure environments or unfamiliar with functional programming paradigms
  • Enterprises that prioritize vendor-supported, stable release cycles over community-driven development

Pros & Cons

Pros

Idiomatic Clojure API

Uses data-driven, functional patterns that feel natural in Clojure, avoiding boilerplate and complexity, as emphasized in the README for a seamless integration with Clojure idioms.

Multi-Engine Support

Provides a unified interface for both Docker and Podman, allowing flexibility across popular container engines without the need to switch libraries, directly from the README's supported engines list.

REPL-Friendly Design

Built for interactive development, enabling real-time exploration and manipulation of container resources from the Clojure REPL, which enhances debugging and iterative workflows.

Babashka Compatibility

Can be used with Babashka for scripting, as indicated by the compatibility badge, making it easy to write and deploy container management scripts in Clojure.

Cons

Manual API Updates

New API specs are added manually as released, which can delay access to the latest features and require users to rely on git libraries for updates, as noted in the README.

Infrequent Official Releases

Releases to Clojars are made on request or for new features, potentially leading to version stagnation and lack of timely bug fixes, which might affect production stability.

Clojure-Centric Dependency

Requires deep knowledge of Clojure and its ecosystem, making it less accessible for teams not already invested in the language or those looking for language-agnostic solutions.

Frequently Asked Questions

Quick Stats

Stars148
Forks8
Contributors0
Open Issues0
Last commit6 days ago
CreatedSince 2021

Tags

#hacktoberfest#babashka#podman#oci#docker-client#devops-tools#container-management#infrastructure-as-code#repl-driven-development#docker#clojure#jvm#containers#oci-containers

Built With

C
Clojure

Links & Resources

Website

Included in

Docker35.8k
Auto-fetched 1 day ago

Related Projects

dockerodedockerode

Docker + Node = Dockerode (Node.js module for Docker's Remote API)

Stars4,897
Forks489
Last commit9 days ago
Docker.DotNetDocker.DotNet

:whale: .NET (C#) Client Library for Docker API

Stars2,414
Forks412
Last commit9 months ago
go-dockerclientgo-dockerclient

Go client for the Docker Engine API.

Stars2,240
Forks557
Last commit1 day ago
docker-maven-plugindocker-maven-plugin

Maven plugin for running and creating Docker images

Stars1,930
Forks653
Last commit6 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub