Docker 优秀资源集锦

Docker 优秀项目和资源大全。

Awesome Docker Awesome


Awesome-Docker 是由 Julien Bisconti 发起和维护的 Docker 资源列表。该列表收集了许多 Docker 相关的优秀资源和项目,方便了 Docker 用户参考查阅。

Docker 优秀资源大全中文版 则是依据 Awesome-Docker 翻译而来。 欢迎你帮助一起对这些资源进行整理和推荐,以方便其他用户更容易查找和理解。

All the links are monitored and tested with awesome_bot made by @dkhamsing

What is Docker ?

Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications. Consisting of Docker Engine, a portable, lightweight runtime and packaging tool, and Docker Hub, a cloud service for sharing applications and automating workflows, Docker enables apps to be quickly assembled from components and eliminates the friction between development, QA, and production environments. As a result, IT can ship faster and run the same app, unchanged, on laptops, data center VMs, and any cloud.

Source: What is Docker

Where to start ?

  • 10-minute Interactive Tutorial
  • Docker Training
  • Read this complete article: Basics – Docker, Containers, Hypervisors, CoreOS
  • Watch the video: [Docker for Developers]docker4dev by [@jpetazzo][jpetazzo]
  • Docker Jumpstart: a quick introduction
  • Docker Curriculum: A comprehensive tutorial for getting started with Docker. Teaches how to use Docker and deploy dockerized apps on AWS with Elastic Beanstalk and Elastic Container Service.
  • Install Docker on your machine and play with a few Useful Images
  • Try [Panamax: Docker Management for Humans][] It will install a CoreOS VM with VirtualBox and has nice front end
  • Install Docker Toolbox Docker Toolbox is an installer to quickly and easily install and setup a Docker environment on your computer. Available for both Windows and Mac, the Toolbox installs Docker Client, Machine, Compose (Mac only), Kitematic and VirtualBox.
  • Check out: [Docker Cheat Sheet][docker-cheat-sheet] by [@wsargent][wsargent] MUST SEE
  • [Project Web Dev][projwebdev] : (Article series) How to create your own website based on Docker
  • [Docker Containers on the desktop][jessblog] by [@jfrazelle][jfrazelle]) The funniest way to learn about docker! (Tips: checkout her [dotfiles][jfrazelledotfiles] and her [dockerfiles][jfrazelledockerfiles])
  • [Container Hacks and Fun Images][jessvid] by [@jfrazelle][jfrazelle] @ DockerCon 2015 MUST WATCH VIDEO (38:50)
  • Learn Docker Full environment set up, screenshots, step-by-step tutorial and more resources (video, articles, cheat sheets) by @dwyl
  • Docker Caveats What You Should Know About Running Docker In Production (written 11 APRIL 2016) MUST SEE
  • How to Whale Learn Docker in your web browser, no setup or installation required.


Useful Articles

Main Resources

General Articles

Portuguese Articles

Deep Dive




Cloud Infrastructure

Good Tips


Continuous Integration

Optimizing Images

Service Discovery



Raspberry Pi & ARM



In English





Terminal User Interface

  • sen - Terminal user interface for docker engine, by @TomasTomecek
  • wharfee - Autocompletion and syntax highlighting for Docker commands.) by @j-bennet
  • ctop - A command line / text based Linux Containers monitoring tool that works just like you expect by @yadutaf
  • dry - An interactive CLI for Docker containers by @moncho
  • dockercraft - Docker + Minecraft = Dockercraft by [@docker][docker]
  • dockersql - A command line interface to query Docker using SQL by [@crosbymichael][crosbymichael]

Dev Tools

  • draw-compose - Utility to draw a schema of a docker compose by @Alexis-benoist
  • GoSu - Run this specific application as this specific user and get out of the pipeline (entrypoint script tool) by @tianon
  • Chaperone - A single PID1 process designed for docker containers. Does user management, log management, startup, zombie reaping, all in one small package. by @garywiz
  • ns-enter (no more ssh, enter name spaces of container) by [@jpetazzo][jpetazzo]
  • Squid-in-a-can (in case of proxy problem) by [@jpetazzo][jpetazzo]
  • docker-gen (Generate files from docker container meta-data) by [@jwilder][jwilder]
  • dockerize (Utility to simplify running applications in docker containers) by [@jwilder][jwilder]
  • registrator (Service registry bridge for Docker) by [@progrium][progrium]
  • Dockly (Dockly is a gem made to ease the pain of packaging an application in Docker.) by @swipely
  • docker-volumes (Docker Volume Manager) by [@cpuguy83][cpuguy83]
  • dockerfile_lint (A rule-based ‘linter’ for Dockerfiles) by @redhataccess
  • powerstrip (A tool for prototyping Docker extensions) by @clusterhq
  • Vagga (Vagga is a containerisation tool without daemons. It is a fully-userspace container engine inspired by Vagrant and Docker, specialized for development environments.) by @tailhook
  • dockerode (Not just another Docker Remote API node.js module) by @apocas
  • go-dockerclient (Go HTTP client for the Docker remote API.) by @fsouza
  • Docker.DotNet (C#/.NET HTTP client for the Docker remote API) by @ahmetalpbalkan
  • container-factory - Produces Docker images from tarballs of application source code by @lsqio
  • codelift - CodeLift is an automated Docker image build utility for ‘dockerizing’ services by @BoozAllen
  • [percheron][percheron] - Organise your Docker containers with muscle and intelligence by @ashmckenzie
  • crane - Lift containers with ease. Easy orchestration for images and containers by @michaelsauter
  • sherdock - Automatic GC of images based on regexp by [@rancher][rancher]
  • bocker (1) - Docker implemented in 100 lines of bash by p8952
  • bocker (2) - Write Dockerfile completely in Bash. Extensible and simple. –> Reusable by @icy
  • docker-gc - A cron job that will delete old stopped containers and unused images by @spotify
  • dlayer - Stats collector for Docker layers by @wercker
  • forward2docker - Utility to auto forward a port from localhost into ports on Docker containers running in a boot2docker VM by @bsideup
  • dockramp - Proof of Concept: A Client Driven Docker Image Builder by @jlhawn
  • portainer - Apache Mesos framework for building Docker images by @tarnfeld
  • Gradle Docker plugin - A Docker remote api plugin for Gradle by [@gesellix][gesellix]
  • Docker client - A Docker remote api client library for the JVM, written in Groovy by [@gesellix][gesellix]
  • Dropdock - A framework designed for Drupal to build fast, isolated development environments using Docker.
  • Devstep - Development environments powered by Docker and buildpacks by [@fgrehm][fgrehm]
  • Lorry - Lorry is a docker-compose.yml validator and composer by [@CenturyLinkLabs][CenturyLinkLabs]
  • Dray - Dray is an engine for managing the execution of container-based workflows. Docker Workflow Engine - UNIX pipes for Docker by [@CenturyLinkLabs][CenturyLinkLabs]
  • docker-do - hassle-free docker run, like env but for docker by @benzaita
  • Docker osx dev - A productive development environment with Docker on OS X by @brikis98
  • rocker - Extended Dockerfile builder. Supports multiple FROMs, MOUNTS, templates, etc. by grammarly.
  • dexec - Command line interface for running code with Docker Exec images. written in Go.
  • crowdr - Tool for managing multiple Docker containers (docker-compose alternative) by @polonskiy
  • ahab - Docker event handling with Python by @instacart
  • docker-garby - Docker garbage collection script by @konstruktoid.
  • DevLab - Utility for running containerized development environments
  • is-docker - Check if the process is running inside a Docker container by [@sindresorhus][sindresorhus]
  • Docker meets the IDE - Integrating your favorite containers in the editor of your choice by domeide
  • DVM - Docker version manager by @getcarina
  • docker-ls - CLI tools for browsing and manipulating docker registries by @mayflower
  • habitus - A Build Flow Tool for Docker by @cloud66
  • Compose Registry - A very handy search engine for Compose Files
  • Docker Clean - A script that cleans Docker containers, images and volumes by @zzrotdesign
  • Powerline-Docker - A Powerline segment for showing the status of Docker containers by @adrianmo
  • Docker-PowerShell - PowerShell Module for Docker
  • docker-compose-search - A search engine for Docker Compose application stacks by @francescou
  • Docker Volume Clone Utility - A Docker Utility to Clone Volumes @gdiepen
  • docker-companion - A command line tool written in Golang to squash and unpack docker images by @mudler
  • sbt-docker-compose - Integrates Docker Compose functionality into sbt by @kurtkopchik
  • Whale-linter - A simple and small Dockerfile linter written in Python3+ without dependencies.
  • docker-make - build,tag,and push a bunch of related docker images via a single command.
  • caduc - A docker garbage collector cleaning stuff you did not use recently

Continuous Integration / Continuous Delivery

  • Awesome-ciandcd - Not specific to docker but relevant.
  • Buddy - The best of Git, build & deployment tools combined into one powerful tool that supercharged our development
  • Captain - Convert your Git workflow to Docker containers ready for Continuous Delivery by @harbur
  • CircleCI - Push or pull Docker images from your build environment, or build and run containers right on CircleCI.
  • CodeFresh - Accelerate your transition to Docker containers
  • CodeShip - Work with your established Docker workflows while automating your testing and deployment tasks with our hosted platform dedicated to speed and security.
  • 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.
  • Dockunit - Docker based integration tests. A simple Node based utility for running Docker based unit tests. By @dockunit
  • Drone - Continuous integration server built on Docker and configured using YAML files.
  • GitLab CI - GitLab has integrated CI to test, build and deploy your code with the use of GitLab runners.
  • GOCD-DockerGo Server and Agent in docker containers to provision.
  • IBM DevOps Services - Continuous delivery using a pipeline deployment onto IBM Containers on Bluemix.
  • Shippable - A SaaS platform for developers and DevOps teams that significantly reduces the time taken for code to be built, tested and deployed to production.
  • Watchtower - Automatically update running Docker containers by [@CenturyLinkLabs][CenturyLinkLabs]
  • Microservices Continuous Deployment - Continuous deployment of a microservices application
  • Pumba - Chaos testing tool for Docker. Can be deployed on Kubernets and CoreOS clusters.


  • Conduit - Experimental deployment system for Docker by @ehazlett
  • depcon - Depcon is written in Go and allows you to easily deploy Docker containers to Apache Mesos/Marathon, Amazon ECS and Kubernetes. By [@gonodr][gondor]
  • dockit - Do docker actions and Deploy gluster containers!
  • rocker-compose - Docker composition tool with idempotency features for deploying apps composed of multiple containers.
  • Zodiac - A lightweight tool for easy deployment and rollback of dockerized applications. By [@CenturyLinkLabs][CenturyLinkLabs]

Hosting for repositories (registries)

Securely store your Docker images. * Docker Hub (provided by Docker Inc.) * (part of CoreOS) - Secure hosting for private Docker repositories * GitLab Container Registry - Repositories focused on using it images in GitLab CI * TreeScale - Build and Distriubute container based applicaitons.

Hosting for containers

  • Amazon ECS - A management service on EC2 that supports Docker containers.
  • [ContainerShip Cloud][containership] - Multi-Cloud Container Hosting Automation Platform.
  • Docker Cloud - Former Tutum
  • Google Container Engine - Docker containers on Google Cloud Computing powered by [Kubernetes][kubernetes].
  • Giant Swarm - Simple microservice infrastructure. Deploy your containers in seconds.
  • IBM Bluemix - Run Docker containers in a hosted cloud environment on IBM Bluemix.
  • OpenShift Dedicated - A hosted [OpenShift][openshift] cluster for running your Docker containers managed by Red Hat.
  • Orchard (part of Docker Inc) - Get a Docker host in the cloud, instantly.
  • Triton - Elastic container-native infrastructure by Joyent.

Reverse Proxy

  • [nginx-proxy][nginxproxy] - Automated nginx proxy for Docker containers using docker-gen by [@jwilder][jwilder]
  • 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. By @JrCs
  • h2o-proxy - Automated H2O reverse proxy for Docker containers. An alternative to [jwilder/nginx-proxy][nginxproxy] by @zchee
  • docker-proxy - Transparent proxy for docker containers, run in a docker container. By @silarsis
  • muguet - DNS Server & Reverse proxy for Docker environments. By @mattallty
  • Træfɪk - Automated reverse proxy and load-balancer for Docker, Mesos, Consul, Etcd… By @EmileVauge
  • fabio - A fast, modern, zero-conf load balancing HTTP(S) router for deploying microservices managed by consul. By @eBay
  • Swarm Ingress Router - Route DNS names to Swarm services based on labels.

Web Interface

Local Container Manager

  • Shutit - Tool for building and maintaining complex Docker deployments by [@ianmiell][ianmiell]
  • FuGu - Docker run wrapper without orchestration by @mattes
  • Boot2Docker - Docker for OSX and Windows –
  • docker-vm - Simple and transparent alternative to boot2docker (backed by Vagrant) by @shyiko
  • Vessel - Automates the setup & use of dockerized development environments by @awvessel
  • subuser - Makes it easy to securely and portably run graphical desktop applications in Docker
  • OctoHost - Simple web focused Docker based mini-PaaS server. git push to deploy your websites as needed) by @octohost
  • [Dokku][dokku] - Docker powered mini-Heroku in around 100 lines of Bash by [@progrium][progrium]
  • Ansible - manage docker containers
  • Vagrant - Docker provider - Good starting point is vagrant-docker-example by @bubenkoff
  • Dray - An engine for managing the execution of container-based workflows. by [@CenturyLinkLabs][CenturyLinkLabs]
  • [percheron][percheron] - Organise your Docker containers with muscle and intelligence by @ashmckenzie
  • Dusty - Managed Docker development environments on OS X
  • Beluga - CLI to deploy docker containers on a single server or low amount of servers. By @cortextmedia
  • libcompose - Go library for Docker Compose.
  • DLite - Simplest way to use Docker on OSX, no VM needed. By @nlf
  • Azk - Orchestrate development enviornments on your local machine by @azukiapp
  • Turbo - Simple and Powerful utility for docker. By [@ramitsurana][ramitsurana]

Volume management and plugins

  • Blockbridge - The Blockbridge plugin is a volume plugin that provides access to an extensible set of container-based persistent storage options. It supports single and multi-host Docker environments with features that include tenant isolation, automated provisioning, encryption, secure deletion, snapshots and QoS. By [@blockbridge][blockbridge]
  • Convoy - an open-source Docker volume driver that can snapshot, backup and restore Docker volumes anywhere. By [@rancher][rancher]
  • Azure Files Volume Driver - A Docker volume driver that allows you to mount persistent volumes backed by Microsoft Azure File Service. By [@ahmetalpbalkan][ahmetalpbalkan]
  • Docker Unison A docker volume container using Unison for fast two-way folder sync. Created as an alternative to slow boot2docker volumes on OS X. By @leighmcculloch
  • Netshare A Docker volume plugin written in Go that supports mounting NFS, AWS EFS & CIFS volumes within a container. By [@gondor][gondor]
  • Docker Machine NFS Activates NFS for an existing boot2docker box created through Docker Machine on OS X.
  • REX-Ray Vendor agnostic storage orchestration engine to provide persistent storage for Docker containers as well as Mesos frameworks and tasks.
  • Local Persist Specify a mountpoint for your local volumes (created via docker volume create) so that files will always persist and so you can mount to different directories in different containers.

Useful Images


Storing Images

  • [Docker Registry v2]distribution
  • Rescoyl (Private Docker registry) by [@noteed][noteed]
  • Atomic Registry Red Hat Atomic Registry is an open source enterprise registry based on the Origin and Cockpit projects, enhancing the Docker registry library.


  • Axibase Time-Series Database (Long-term retention of container statistics and built-in dashboards for Docker. Collected with native Google cAdvisor storage driver.)
  • cAdvisor (Analyzes resource usage and performance characteristics of running containers. created by @Google
  • Datadog Datadog is a full-stack monitoring service for large-scale cloud environments that aggregates metrics/events from servers, databases, and applications. It includes support for Docker, Kubernetes, and Mesos.
  • Dockerana (packaged version of Graphite and Grafana, specifically targeted at metrics from Docker.)
  • Docker-mon (Console-based Docker monitoring) by @icecrime
  • Glances (A cross-platform curses-based system monitoring tool written in Python) by @nicolargo
  • InfluxDB, cAdvisor, Grafana (InfluxDB Time series DB in combination with Grafana and cAdvisor) by [@vegasbrianc][vegasbrianc]
  • Meros Analyzes containers resources, captures logs, remote web SSH terminal and powerful DevOps alerts.
  • New Relic New Relics Docker Monitoring tool
  • Prometheus (Open-source service monitoring system and time series database)
  • Ruxit Monitor containerized applications without installing agents or modifying your Run commands
  • Seagull (Friendly Web UI to monitor docker daemon.) by @tobegit3hub
  • Site24x7 Docker MOnitoring for DevOps and IT is a SaaS Pay per Host model
  • Sysdig: An open source troubleshooting tool that provides a rich set of real-time, system-level information. It has container-specific features and is very useful in Docker environments.
  • Zabbix Docker module: Zabbix module that provides discovery of running containers, CPU/memory/blk IO/net container metrics. Systemd Docker and LXC execution driver is also supported. It’s a dynamically linked shared object library, so its performance is (~10x) better, than any script solution.
  • [SPM for Docker][spm] Monitoring of host and container metrics, Docker events and logs. Automatic log parser. Anomaly Detection and alerting for metrics and logs. [@sematext][sematext]
  • Zabbix Docker - Monitor containers automatically using zabbix LLD feature.
  • Collecting docker logs and stats with Splunk
  • Grafana Docker Dashboard Template - A template for your Docker, Grafana and Prometheus stack [@vegasbrianc][vegasbrianc]
  • DoMonit - A simple Docker Monitoring wrapper For Docker API


  • Calico-Docker - Calico is a pure layer 3 virtual network that allows containers over multiple docker-hosts to talk to each other.
  • Wagl - DNS Service Discovery for Docker Swarm (by [@ahmetalpbalkan][ahmetalpbalkan] )
  • [Weave]weave – Weave creates a virtual network that connects Docker containers deployed across multiple hosts.
  • Flannel - Flannel is a virtual network that gives a subnet to each host for use with container runtimes.


  • [Docker-Fluentd][fluentd]: (Docker container to Log Other Containers’ Logs. One can aggregate the logs of Docker containers running on the same host using Fluentd.) by [@kiyoto][kiyoto]
  • LogJam (Logjam is a log forwarder designed to listen on a local port, receive log entries over UDP, and forward these messages on to a log collection server (such as logstash).) by @gocardless
  • Logspout (Log routing for Docker container logs) by [@gliderlabs][gliderlabs]
  • [Logsene for Docker][spm] Monitoring of Metrics, Events and Logs implemented in Node.js. Integrated logagent-js to detect and parse various log formats. [@sematext][sematext]

Deployment and Infrastructure

  • Centurion: Centurion is a mass deployment tool for Docker fleets. It takes containers from a Docker registry and runs them on a fleet of hosts with the correct environment variables, host volume mappings, and port mappings. By @newrelic
  • Clocker: Clocker creates and manages a Docker cloud infrastructure. Clocker supports single-click deployments and runtime management of multi-node applications that run as containers distributed across multiple hosts, on both Docker and Marathon. It leverages [Calico][calico] and [Weave][weave] for networking and [Brooklyn][brooklyn] for application blueprints. By @brooklyncentral
  • Cloud 66 - Full-stack hosted container management as a service
  • deploy - Git and Docker deployment tool. A middle ground between simple Docker composition tools and full blown cluster orchestration. Declarative configuration and short commands for managing (syncing, building, running) of infrastructures of more than a few services. Able to deploy whole preconfigured server or system of services with a single line (without having to scroll the line).
  • Docket: Custom docker registry that allows for lightning fast deploys through bittorrent by @netvarun
  • Longshoreman: Longshoreman automates application deployment using Docker. Just create a Docker repository (or use a service), configure the cluster using AWS or Digital Ocean (or whatever you like) and deploy applications using a Heroku-like CLI tool. By longshoreman


  • Atlantis - Atlantis is an Open Source PaaS for HTTP applications built on Docker and written in Go
  • Deis (Your PaaS, your rules) –
  • [Dokku]dokku by [@progrium][progrium]
  • Empire: A PaaS built on top of Amazon EC2 Container Service (ECS)
  • Flynn (A next generation open source platform as a service) –
  • [OpenShift]openshift by Red Hat
  • Tsuru (Tsuru is an extensible and open source Platform as a Service software) –
  • Convox Rack: Convox Rack is open source PaaS built on top of expert infrastructure automation and devops best practices.
  • [Rancher][rancher]: Rancher is an open source project that provides a complete platform for operating Docker in production
  • Dcw: Docker-compose SSH wrapper: a very poor man PaaS, exposing the docker-compose and custom-container commands defined in container labels.

Remote Container Manager / Orchestration

  • autodock (Daemon for Docker Automation) by [@prologic][prologic]
  • blimp Uses Docker Machine to easily move a container from one Docker host to another, show containers running against all of your hosts, replicate a container across multiple hosts and more. By @defermat and @schvin
  • Capitan Composable docker orchestration with added scripting support by @byrnedo.
  • Citadel (Citadel is a toolkit for scheduling containers on a Docker cluster) (unmaintained)
  • CloudSlang (CloudSlang is a workflow engine to create Docker process automation)
  • ContainerShip (A simple container management platform) – [containership]
  • [CoreOS]coreos
  • Decking: (Decking aims to simplify the creation, organsation and running of clusters of Docker containers in a way which is familiar to developers)
  • Deploying a Containerized App on a Public Node with Mesos (Docker plus Mesosphere provides an easy way to automate and scale deployment of containers in a production environment)
  • Flocker (Flocker is a data volume manager and multi-host Docker cluster management tool) by @ClusterHQ
  • Gaudi (Gaudi allows to share multi-component applications, based on Docker, Go, and YAM) ~~ project discontinued.
  • Kontena (Application Containers for Masses) –
  • [Kubernetes]kubernetes – [kubernetes] See Also awesome-kubernetes by [@ramitsurana][ramitsurana]
  • Maestro (Maestro provides the ability to easily launch, orchestrate and manage mulitiple Docker containers as single unit) by @tascanini
  • Marathon (Marathon is a private PaaS built on Mesos. It automatically handles hardware or software failures and ensures that an app is “always on”)
  • Nomad Project Easily deploy applications at any scale. A Distributed, Highly Available, Datacenter-Aware Scheduler.
  • Panamax (Docker Management for Humans) – []
  • Rancher (Portable AWS-style infrastructure service for Docker) –
  • Fleet (A Distributed init System providing low-level orchestration ) – []
  • Serf (Service orchestration and management tool) by @hashicorp
  • Shipyard (Composable Docker Management) –
  • MCollective Docker Agent Uses MCollective to orchestrate your Docker containers and images – @m4ce
  • ElasticKube open source management platform for Kubernetes.
  • Mantl Mantl is a modern platform for rapidly deploying globally distributed services @ciscocloud


  • docker-bench-security script that checks for dozens of common best-practices around deploying Docker containers in production. By [@docker][docker]
  • notary a server and a client for running and interacting with trusted collections. By [@docker][docker]
  • Twistlock Twistlock Security Suite detects vulnerabilities, hardens container images, and enforces security policies across the lifecycle of applications.
  • Clair Clair is an open source project for the static analysis of vulnerabilities in appc and docker containers. By [@coreos][CoreOS]

Service Discovery

  • docker-consul by [@progrium][progrium]
  • etcd: A highly-available key value store for shared configuration and service discovery by [@coreOS][coreos]
  • Docker Grand Ambassador This is a fully dynamic docker link ambassador. + Article by [@cpuguy83][cpuguy83]
  • proxy: lightweight nginx based load balancer self using service discovery provided by registrator. by [

Top Contributors