fucking-awesome-docker
🐳 A curated list of Docker resources and projects. With repository stars⭐ and forks🍴
https://github.com/correia-jpv/fucking-awesome-docker
Last synced: 24 days ago
JSON representation
Awesome Lists
Wrappers
- Awesome Compose - Docker Compose samples.
- Awesome Kubernetes
- Awesome Linux Container
- Awesome Selfhosted
- Awesome Sysadmin
- ToolsOfTheTrade
Books & Tutorials
Wrappers
Building Images
Base Images
- distroless - Language focused docker images, minus the operating system.
- Chainguard Images - Minimal, signed, SBOM-attested container images built on Wolfi.
- melange - Build apk packages from declarative YAML for use with apko.
- Wolfi - Undistro Linux designed for containers; glibc-based, signed, daily SBOMs.
- pglayers - Pre-built PostgreSQL extensions as composable Docker layers. 50+ extensions, ready-to-use combined images (full, Azure-compatible).
Builder
-
ansible-bender
- A tool utilising
ansibleandbuildah. - BuildKit - Concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit.
- cekit - A tool used by openshift to build base images using different build engines.
- dlayer - Docker layer analyzer.
- docker-companion - A command line tool written in Golang to squash and unpack docker images.
- docker-repack - Repacks a Docker image into a smaller, more efficient version that makes it significantly faster to pull.
- DockerSlim
- essex - Boilerplate for Docker Based Projects: Essex is a CLI utility written in bash to quickly setup clean and consistent Docker projects with Makefile driven workflows.
- HPC Container Maker - Generates Dockerfiles from a high level Python recipe, including building blocks for High-Performance Computing components.
- img - Standalone, daemon-less, unprivileged Dockerfile and OCI compatible container image builder.
- RAUDI - A tool to automatically update (and optionally push to Docker Hub) Docker Images for 3rd party software whenever theres is a new release/update/commit.
-
runlike
- Generate
docker runcommand and options from running containers. - Whaler - Program to reverse Docker images into Dockerfiles.
- apko - Declarative OCI image builder from apk packages; reproducible by design.
- buildx - Official Docker CLI plugin for multi-platform builds backed by BuildKit.
- earthly - Containerized build automation with Dockerfile-meets-Makefile syntax.
- ko - Build and deploy Go applications as container images without a Dockerfile.
-
nix2container
- Build OCI images with Nix without
docker loadround-trips.
Dockerfile
- Dockerfile Generator
- Dockershelf - A repository that serves as a collector for docker recipes that are universal, efficient and slim. Images are updated, tested and published daily via a Travis cron job.
- Dofigen - A Dockerfile generator using a simplified description in YAML or JSON format.
Linter
- docker-image-size-limit - A tool to keep an eye on your docker images size.
-
Hadolint
- A Dockerfile linter that checks for best practices, common mistakes, and is also able to lint any bash written in
RUNinstructions;. - Dockadvisor - Lightweight Dockerfile linter with 60+ rules, quality scoring, and security checks.
Demos and Examples
Wrappers
- Local Docker DB - compose samples for a lot of databases
- Webstack-micro
Developer Workflow
API Client
- contajners - An idiomatic, data-driven, REPL friendly Clojure client for OCI container engines.
- Docker Client for JVM - A Docker remote api client library for the JVM, written in Groovy.
- docker-controller-bot - Telegram bot to control docker containers.
- docker-maven-plugin - A Maven plugin for running and creating Docker images.
- Docker.Registry.DotNet - .NET (C#) Client Library for interacting with a Docker Registry API (v2).
- dockerode - Docker Remote API node.js module.
- Gradle Docker plugin - A Docker remote api plugin for Gradle.
- Portainer stack utils - Bash script to deploy/update/undeploy Docker stacks in a Portainer instance from a docker-compose yaml file.
- sbt-docker - Create Docker images directly from sbt.
- Docker.DotNet - C#/.NET HTTP client for the Docker remote API.
- go-dockerclient - Go HTTP client for the Docker remote API.
CI/CD
- Captain - Convert your Git workflow to Docker containers ready for Continuous Delivery.
- Diun - Receive notifications when an image or repository is updated on a Docker registry.
- dockcheck - A script checking updates for docker images without pulling then auto-update selected/all containers. With notifications, pruning and more.
- Gantry - Automatically update selected Docker swarm services.
- Jaypore CI - Simple, very flexible, powerful CI / CD / automation system configured in Python. Offline and local first.
- Kraken CI - Modern CI/CD, open-source, on-premise system that is highly scalable and focused on testing. One of its executors is Docker. Developed.
- Skipper - Easily dockerize your Git repository.
- Defang - Deploy Docker Compose to your favorite cloud in minutes.
- Docker plugin for Jenkins - The aim of the docker plugin is to be able to use a docker host to dynamically provision a slave, run a single build, then tear-down that slave.
- Drone - Continuous integration server built on Docker and configured using YAML files.
- Self Hosted Runner - Dockerized solution for setting up a self-hosted GitHub Actions runner with support for Linux, macOS, and Windows.
Development Environment
- coder - Remote development machines powered by Terraform or Docker.
- dde - Local development environment toolset based on Docker.
- DIP - CLI utility for straightforward provisioning and interacting with an application configured by docker-compose.
- EnvCLI - Replace your local installation of Node, Go, ... with project-specific docker containers.
- Gebug - A tool that makes debugging of Dockerized Go applications super easy by enabling Debugger and Hot-Reload features, seamlessly.
- Lando - Lando is for developers who want to quickly specify and painlessly spin up the services and tools needed to develop their projects.
- uniget - Uni(versal)get, the installer and updater for container tools and beyond (formerly docker-setup).
- Zsh-in-Docker - Install Zsh, Oh-My-Zsh and plugins inside a Docker container with one line!.
- HarborPilot - Automated multi-platform Docker image builder for embedded Linux development (RK3588, RV1126, RK3568). Features three-layer config inheritance, PORT_SLOT-based port allocation, and cross-version Ubuntu support (20.04/22.04/24.04).
- Laradock - Full PHP development environment based on Docker, running Nginx/Apache, PHP, MySQL, Redis and more as swappable Compose services.
Serverless
- Apache OpenWhisk - A serverless, open source cloud platform that executes functions in response to events at any scale.
- OpenFaaS - A complete serverless functions framework for Docker and Kubernetes.
Testing
- Container Structure Test - A framework to validate the structure of an image by checking the outputs of commands or the contents of the filesystem.
- Kurtosis - A composable build system for multi-container test environments that provides developers with: a powerful Python-like SDK for environment configuration, a compile-time validator to verify environment behavior & setup, and a runtime for environment execution, monitoring, & debugging capabilities.
- Pumba - Chaos testing tool for Docker. Can be deployed on kubernetes and CoreOS cluster.
- dgoss - A fast YAML based tool for validating docker containers.
Wrappers
- Hokusai - A Docker + Kubernetes CLI for application developers; used to containerize an application and to manage its lifecycle throughout development, testing, and release cycles. From artsy.
- Preevy - Preview environments for Docker and Docker Compose projects. Test your changes and get feedback from devs and non-devs (Product/Design) by deploying pull requests to the your cloud provider as part of your CI pipeline.
- subuser - Makes it easy to securely and portably run graphical desktop applications in Docker.
- udocker - A tool to execute simple docker containers in batch or interactive systems without root privileges.
Engine & Runtime
- cri-o - Open Container Initiative-based implementation of Kubernetes Container Runtime Interface.
- lxc - LXC - Linux Containers.
- runtime-tools - Oci-runtime-tool is a collection of tools for working with the OCI runtime specification.
- podman - Libpod is a library used to create container pods. Home of Podman.
- Mocker - Docker-compatible container CLI for macOS, built on Apple's Containerization framework.
- colima - Container runtimes on macOS (and Linux) with minimal setup.
- containerd - An open and reliable container runtime.
- gVisor - Application Kernel for Containers.
- runc - CLI tool for spawning and running containers according to the OCI specification.
- youki - Container runtime written in Rust, implementing the OCI runtime specification.
Image Lifecycle
Image Scanning & SBOM
- Clair - Clair is an open source project for the static analysis of vulnerabilities in appc and docker containers.
- oscap-docker - OpenSCAP provides oscap-docker tool which is used to scan Docker containers and images.
- Syft - CLI tool and library for generating a Software Bill of Materials (SBOM) from container images and filesystems.
- Trivy - Aqua Security's open source simple and comprehensive vulnerability scanner for containers (suitable for CI).
- Anchor - A tool to ensure reproducible builds by pinning dependencies inside your Dockerfiles.
- Grype - A vulnerability scanner for container images, filesystems and SBOMs.
- pindock - Pin and update Docker image digests in Dockerfiles and compose files.
- Docker Scout - Official Docker CLI for SBOM generation, vulnerability analysis, and policy evaluation.
- BomLens - Scan container images (plus source, binaries, and firmware) into CycloneDX SBOMs with vulnerability, license, and notice reports. Ships as a single Docker image with a web UI.
Registry
- Harbor
- Kraken - Uber's Highly scalable P2P docker registry, capable of distributing TBs of data in seconds.
- Registryo - UI and token based authentication server for onpremise docker registry.
- Dragonfly - Provide efficient, stable and secure file distribution and image acceleration based on p2p technology.
- nscr - A light-weight, self-contained container registry that's easy to run and maintain.
- NORA - Lightweight multi-protocol artifact registry supporting Docker, Maven, npm, Cargo and PyPI in a single 32MB binary. Pull-through cache, Web UI, Prometheus metrics, RBAC auth.
- kontain.me - On-demand container image registry that builds and serves images when they are pulled.
Registry CLI
- skopeo - Work with remote image registries: retrieve information, copy images, sign content.
-
crane
- Lightweight CLI to manipulate registry images, from
go-containerregistry. -
go-containerregistry
- Go library and CLI tools (
crane,gcrane,registry) for working with container registries. - oras - Push and pull arbitrary OCI artifacts to and from any OCI registry.
- regctl - Daemonless registry client; copy, inspect, modify, and sign OCI images.
Supply Chain
- cosign - Container signing, verification, and transparency log for OCI artifacts.
- in-toto - Framework for supply chain attestations; underpins SLSA and cosign provenance.
- policy-controller - Kubernetes admission controller enforcing cosign signatures on container images.
- witness - Generate and verify in-toto attestations across the build pipeline.
In-Container Tooling
Wrappers
- ckron - A cron-style job scheduler for docker,.
- dockerize - Utility to simplify running applications in docker containers.
- GoSu - Run this specific application as this specific user and get out of the pipeline (entrypoint script tool).
- is-docker - Check if the process is running inside a Docker container.
- su-exec - This is a simple tool that will simply execute a program with different privileges. The program will be executed directly and not run as a child, like su and sudo does, which avoids TTY and signal issues. Why reinvent gosu? This does more or less exactly the same thing as gosu but it is only 10kb instead of 1.8MB.
- supercronic - Crontab-compatible job runner, designed specifically to run in containers.
- Ofelia - Ofelia is a modern and low footprint job scheduler for docker environments, built on Go. Ofelia aims to be a replacement for the old fashioned cron. Supports configuration from container labels and/or configuration files.
- microcheck - Lightweight health check utilities for Docker containers (75 KB instead of 9.3 MB for httpcheck versus cURL) in pure C - http(s), port checks, and parallel execution are included.
- docker-gen - Generate files from docker container meta-data.
- cdebug - Swiss-army knife for debugging running containers via ephemeral sidecars; works with Docker, containerd, and Kubernetes.
Networking & Proxies
Networking
- netshoot - The netshoot container has a powerful set of networking tools to help troubleshoot Docker networking issues.
- Pipework - Software-Defined Networking for Linux Containers, Pipework works with "plain" LXC containers, and with the awesome Docker.
- registrator - Service registry bridge for Docker.
-
docker-dns
- Lightweight DNS forwarder for Docker containers, resolves container names with custom suffixes (e.g.
.docker) on the host to simplify service discovery. - Flannel - Flannel is a virtual network that gives a subnet to each host for use with container runtimes.
Reverse Proxy
- caddy-docker-proxy - Caddy-based reverse proxy, configured with service or container labels.
- caddy-docker-upstreams - Docker upstreams module for Caddy, configured with container labels.
- Docker Dnsmasq Updater - Update a remote dnsmasq server with Docker container hostnames.
- docker-flow-proxy - Reconfigures proxy every time a new service is deployed, or when a service is scaled.
- Swarm Router - A zero config service name based router for docker swarm mode with a fresh and more secure approach.
- Træfɪk - Automated reverse proxy and load-balancer for Docker, Mesos, Consul, Etcd.
- Let's Encrypt Nginx-proxy Companion - A lightweight companion container for the nginx-proxy. It allow the creation/renewal of Let's Encrypt certificates automatically.
- Nginx Proxy Manager - A beautiful web interface for proxying web based services with SSL.
- OpenResty Manager - The easiest using, powerful and beautiful OpenResty Manager(Nginx Enhanced Version), open source alternative to OpenResty Edge.
- BunkerWeb - Open-source and next-gen Web Application Firewall (WAF).
Observability
Reverse Proxy
- Autoheal - Monitor and restart unhealthy docker containers automatically.
- cAdvisor - Analyzes resource usage and performance characteristics of running containers.
- dockprom - Docker hosts and containers monitoring with Prometheus, Grafana, cAdvisor, NodeExporter and AlertManager.
- Doku - Doku is a simple web-based application that allows you to monitor Docker disk usage.
- AppDynamics - 💴 Docker Monitoring extension gathers metrics from the Docker Remote API, either using Unix Socket or TCP.
- DLIA - DLIA is an AI-powered Docker log monitoring agent that uses Large Language Models (LLMs) to intelligently analyze container logs, detect anomalies, and provide contextual insights over time.
- ADRG - Dynamic Docker resource governor using cgroups v2 to manage system load.
- DockProbe - Lightweight Docker monitoring dashboard in a single container. Real-time metrics, 6 anomaly detection rules, Telegram alerts, and 16 automated security scans. Zero config, ~50MB RAM.
- Drydock - Container update monitoring with web dashboard, 23 registry providers, 20 notification triggers, and distributed agent architecture.
- Maintenant - Self-discovering infrastructure monitoring for Docker and Kubernetes. Auto-detects containers via labels, with endpoint monitoring, heartbeats, TLS certificates, resource metrics, update intelligence, and a built-in status page. Single binary with embedded SPA.
- Docker-Sentinel - Automated container updates with per-container policies, rollback safety, and a real-time web dashboard.
- Wiremap - A self-hosted visual Docker network topology explorer with real-time log streaming, live stats, embedded terminal, and container inspection.
- docker-exporter - Lightweight Prometheus exporter for Docker container metrics written in Rust. Correct cgroup v2 memory working set on ARM64 (Raspberry Pi 5), runs non-root with a read-only socket, ~7 MiB idle RAM.
- InfraCanvas - Live visual map of containers, pods, volumes, and networks on any Linux server. Single binary, WebSocket-powered live updates.
Official Projects
- Moby
- Docker Compose - Define and run multi-container applications with Docker.
Raspberry Pi & ARM
Wrappers
Running Containers
Composition
- ctk - Visual composer for container based workloads.
- kompose - Go from Docker Compose to Kubernetes.
- plash - A container run and build engine - runs inside docker.
- podman-compose - A script to run docker-compose.yml using podman.
- Smalte
- Composerize - Convert docker run commands into docker-compose files.
Deployment & Platforms
- Grafeas - A common API for metadata about containers, from image and build details to security vulnerabilities.
- swarm-ansible - Swarm-Ansible bootstraps a production-ready swarm cluster using ansible. Comes with tools to automate CI, help monitoring and traefik pre-configured for SSL certificates and simple-auth. Comes with a private registry and more!.
- SwarmManagement - Swarm Management is a python application, installed with pip. The application makes it easy to manage a Docker Swarm by configuring a single yaml file describing which stacks to deploy, and which networks, configs or secrets to create.
- werf - Werf is a CI/CD tool for building Docker images efficiently and deploying them to Kubernetes using GitOps.
- caprover - [Previously known as CaptainDuckDuck] Automated Scalable Webserver Package (automated Docker+nginx) - Heroku on Steroids.
- Convox Rack - Convox Rack is open source PaaS built on top of expert infrastructure automation and devops best practices.
- Dokku - Docker powered mini-Heroku that helps you build and manage the lifecycle of applications.
- Exoframe - A self-hosted tool that allows simple one-command deployments using Docker.
- Tsuru - Tsuru is an extensible and open source Platform as a Service software.
- docker-to-iac - Translate docker run and commit into Infrastructure as Code templates for AWS, Render.com and DigitalOcean.
- doco-cd - Lightweight GitOps and Continuous Deployment tool to deploy Docker Compose projects and Swarm stacks using polling and webhooks.
- OpenRun - Builds, deploys, proxies, authenticates and auto-pauses web apps with Docker or Kubernetes.
Garbage Collection
- docker-custodian - Keep docker hosts tidy.
- Docuum - Least recently used (LRU) eviction of Docker images.
Orchestration
- CloudSlang - CloudSlang is a workflow engine to create Docker process automation.
- docker rollout - Zero downtime deployment for Docker Compose services.
- Kubernetes - Open source orchestration system for Docker containers by Google.
- Mesos - Resource/Job scheduler for containers, VM's and physical hosts.
- Nebula - A Docker orchestration tool designed to manage massive scale distributed clusters.
- Nomad - Easily deploy applications at any scale. A Distributed, Highly Available, Datacenter-Aware Scheduler.
- Rancher - An open source project that provides a complete platform for operating Docker in production.
- Swarm-cronjob - Create jobs on a time-based schedule on Swarm.
Security
Reverse Proxy
- CetusGuard - CetusGuard is a tool that protects the Docker daemon socket by filtering calls to its API endpoints.
- Checkov - Static analysis for infrastructure as code manifests (Terraform, Kubernetes, Cloudformation, Helm, Dockerfile, Kustomize) find security misconfiguration and fix them.
- Deepfence Threat Mapper - Powerful runtime vulnerability scanner for kubernetes, virtual machines and serverless.
- docker-bench-security - Script that checks for dozens of common best-practices around deploying Docker containers in production.
- KICS - An infrastructure-as-code scanning tool, find security vulnerabilities, compliance issues, and infrastructure misconfigurations early in the development cycle. Can be extended for additional policies.
- Sysdig Falco - Sysdig Falco is an open source container security monitor. It can monitor application, container, host, and network activity and alert on unauthorized activity.
- buildcage - Restricts outbound network access during Docker builds to prevent supply chain attacks, working as a drop-in BuildKit remote driver for Docker Buildx, with ready-to-use GitHub Actions.
- segspec - Extracts network dependencies from Docker Compose, Kubernetes manifests, Helm charts, and other config files to generate Kubernetes NetworkPolicies with evidence tracing.
- Den - Self-hosted sandbox runtime for AI agents with Docker containers, security hardening, REST API and WebSocket support.
- docker-socket-proxy - HAProxy-based fine-grained filter for the Docker API socket; widely used to expose a restricted socket to reverse proxies and homelab stacks.
- container-explorer - Forensic utility to explore Docker and containerd container details from mounted disk images.
- compose-lint - Lints Docker Compose files for security misconfigurations — privileged containers, unpinned images, Docker socket mounts, plaintext credentials — grounded in OWASP and the CIS Docker Benchmark.