2014-09-21 20:44:12 +02:00
# Awesome Docker
2014-09-21 19:01:48 +02:00
2014-09-21 20:36:41 +02:00
> A curated list of Docker resources
2014-09-22 21:48:54 +02:00
Inspired by [@sindresorhus ](https://github.com/sindresorhus )' [awesome ](https://github.com/sindresorhus/awesome )
2014-09-22 20:56:11 +02:00
2014-09-25 07:48:46 +02:00
Share some love: add your docker resource by forking / sending pull requests.
2014-09-21 20:36:41 +02:00
2014-09-26 14:08:20 +02:00
> **Please**, help organize these resources so that they are _easy to find_ and _understand_ for new comers. See how to **[Contribute](https://github.com/veggiemonk/awesome-docker/blob/master/CONTRIBUTING.md)**
2014-09-21 20:36:41 +02:00
This list is not exhaustive (nor is it meant to be) but can probably help you get up and running faster.
2014-09-26 14:08:20 +02:00
---
2014-09-22 21:48:54 +02:00
* [Useful Articles ](#useful-articles )
2014-09-26 10:47:25 +02:00
* [Main Resources ](#main-resources )
* [General Articles ](#general-articles )
* [Good Tips ](#good-tips )
* [Optimizing Images ](#optimizing-images )
2014-09-26 14:34:11 +02:00
* [Service Discovery ](#service-discovery )
2014-09-26 10:47:25 +02:00
* [Security ](#security )
* [Performances ](#performances )
* [Other ](#other )
2014-09-22 21:48:54 +02:00
* [Books ](#books )
* [Dev ](#dev )
2014-09-26 14:37:17 +02:00
* [Continous Integration / Continous Delivery ](#continous-integration--continous-delivery )
2014-09-25 22:18:55 +02:00
* [Hosting for repositories (registries) ](#hosting-for-repositories-registries )
2014-09-26 14:38:13 +02:00
* [Hosting for containers ](#hosting-for-containers-paying-services- )
2014-09-22 21:52:41 +02:00
* [Dev Tools ](#dev-tools )
2014-09-26 14:39:03 +02:00
* [Useful Images ](#useful-images )
2014-09-26 14:08:20 +02:00
* [Storing Images ](#storing-images )
* [Running Containers ](#running-containers )
2014-11-06 11:53:26 +01:00
* [Networking ](networking )
* [Logging ](#logging )
2014-09-26 08:43:56 +02:00
* [Service Discovery ](#service-discovery )
2014-09-22 21:48:54 +02:00
* [Slides ](#slides )
* [Videos ](#videos )
2014-09-22 21:52:41 +02:00
* [Main Account ](#main-account )
* [Useful videos ](#useful-videos )
2014-09-26 09:06:57 +02:00
* [Interesting Twitter Accounts ](#interesting-twitter-accounts )
2014-09-22 21:48:54 +02:00
----
2014-09-22 08:20:47 +02:00
## Useful Articles
2014-09-21 20:36:41 +02:00
2014-09-26 10:47:25 +02:00
### Main Resources
2014-09-26 08:40:31 +02:00
* [Docker Weekly ](http://blog.docker.com/docker-weekly-archives/ ) Huge resource
2014-09-22 08:20:47 +02:00
* [Century Links Labs ](http://www.centurylinklabs.com/category/docker-posts/ )
2014-09-26 08:40:31 +02:00
* [Valuable Docker Links ](http://www.nkode.io/2014/08/24/valuable-docker-links.html ) Very complete
2014-09-23 08:39:55 +02:00
* [Docker Ecosystem ](http://www.mindmeister.com/389671722/docker-ecosystem ) (Mind Map) < --- MUST SEE
2014-09-22 08:20:47 +02:00
* [Blog ](http://jpetazzo.github.io/ ) of [@jpetazzo ](https://github.com/jpetazzo )
2014-09-26 08:56:14 +02:00
* [Blog ](http://progrium.com/blog/ ) of [@progrium ](https://github.com/progrium )
2014-10-16 11:00:25 +02:00
* [Blog ](http://jasonwilder.com/ ) of [@jwilder ](https://github.com/jwilder )
2014-11-12 09:29:13 +01:00
* [Digital Ocean Community ](https://www.digitalocean.com/community/search?primary_filter=tutorials&query=docker )
2014-09-26 10:47:25 +02:00
### General Articles
2014-09-26 08:56:14 +02:00
* [Getting Started with Docker ](https://serversforhackers.com/articles/2014/03/20/getting-started-with-docker/ ) by [@fideloper ](https://github.com/fideloper ) -- [Servers For Hackers ](https://serversforhackers.com/editions/ ) is valuable resource. At some point, every programmer finds themselves needing to know their way around a server.
2014-09-26 10:47:25 +02:00
* [How to Use Docker on OS X: The Missing Guide ](http://viget.com/extend/how-to-use-docker-on-os-x-the-missing-guide )
* [Docker for (Java) Developers ](http://ro14nd.de/Docker-for-Developers/ )
2014-10-22 21:36:14 +02:00
* [Deploying NGINX with Docker ](http://nginx.com/blog/deploying-nginx-nginx-plus-docker/ )
2014-10-24 08:23:45 +02:00
* [Eight Docker Development Patterns ](http://www.hokstad.com/docker/patterns )
2014-09-26 14:32:15 +02:00
2014-09-26 10:47:25 +02:00
### Good Tips
2014-09-22 12:55:07 +02:00
* [GUI Apps with Docker ](http://fabiorehm.com/blog/2014/09/11/running-gui-apps-with-docker/ ) by [@fgrehm ](https://github.com/fgrehm )
2014-10-16 11:01:34 +02:00
* [Automated Nginx Reverse Proxy for Docker ](http://jasonwilder.com/blog/2014/03/25/automated-nginx-reverse-proxy-for-docker/ ) by [@jwilder ](https://github.com/jwilder )
2014-09-26 10:47:25 +02:00
* [Using NSEnter with Boot2Docker ](http://ro14nd.de/NSEnter-with-Boot2Docker/ )
2014-10-16 11:00:25 +02:00
* [A Simple Way to Dockerize Applications ](http://jasonwilder.com/blog/2014/10/13/a-simple-way-to-dockerize-applications ) by [@jwilder ](https://github.com/jwilder )
2014-10-16 17:17:58 +02:00
* [Building good docker images ](http://jonathan.bergknoff.com/journal/building-good-docker-images ) by [@jbergknoff ](https://github.com/jbergknoff )
2014-11-05 07:48:18 +01:00
* [10 Things Not To Forget Before Deploying Docker In Production ](http://www.slideshare.net/rightscale/docker-meetup-40826948 )
2014-11-06 18:53:43 +01:00
* [Make Your Docker Workflow Awesome With Fig.sh ](http://www.syncano.com/docker-workflow-fig-sh/ ) Fig is a python application that helps you run groups of docker containers.
2014-09-26 10:47:25 +02:00
### Optimizing Images
2014-09-26 10:12:59 +02:00
* [Create the smallest possible Docker container ](http://blog.xebia.com/2014/07/04/create-the-smallest-possible-docker-container/ )
* [Creating a Docker image from your code ](http://blog.tutum.co/2014/04/10/creating-a-docker-image-from-your-code/ )
* [Optimizing Docker Images ](http://www.centurylinklabs.com/optimizing-docker-images/?hvid=1OW0br )
2014-10-23 07:48:54 +02:00
* [How to Optimize Your Dockerfile ](http://blog.tutum.co/2014/10/22/how-to-optimize-your-dockerfile/ ) by [@tutumcloud ](https://github.com/tutumcloud )
2014-10-21 13:19:47 +02:00
* [Building Docker Images for Static Go Binaries ](https://medium.com/@kelseyhightower/optimizing-docker-images-for-static-binaries-b5696e26eb07 ) by [@kelseyhightower ](https://github.com/kelseyhightower )
2014-09-26 10:47:25 +02:00
* [Squashing Docker Images ](http://jasonwilder.com/blog/2014/08/19/squashing-docker-images/ ) by [@jwilder ](https://github.com/jwilder )
* [Dockerfile Golf (or optimizing the Docker build process) ](http://www.davidmkerr.com/2014/08/dockerfile-golf-or-optimizing-docker.html )
2014-09-26 14:34:11 +02:00
### Service Discovery
* [@progrium ](https://github.com/progrium ) Service Discovery articles series:
2014-11-06 19:08:06 +01:00
* [Consul Service Discovery with Docker ](http://progrium.com/blog/2014/08/20/consul-service-discovery-with-docker/ )
2014-09-26 14:34:11 +02:00
* [Understanding Modern Service Discovery with Docker ](http://progrium.com/blog/2014/07/29/understanding-modern-service-discovery-with-docker/ )
* [Automatic Docker Service Announcement with Registrator ](http://progrium.com/blog/2014/09/10/automatic-docker-service-announcement-with-registrator/ )
2014-09-26 10:47:25 +02:00
### Security
2014-09-26 10:12:59 +02:00
* [Docker and SELinux ](http://www.projectatomic.io/docs/docker-and-selinux/ )
2014-09-26 10:47:25 +02:00
* [Bringing new security features to Docker ](https://opensource.com/business/14/9/security-for-docker )
2014-09-26 14:34:51 +02:00
2014-09-26 14:36:25 +02:00
### Performances
2014-09-26 10:12:59 +02:00
* [Performance Analysis of Docker on Red Hat Enterprise Linux 7 ](http://developerblog.redhat.com/2014/08/19/performance-analysis-docker-red-hat-enterprise-linux-7/ )
* [Distrubuted JMeter testing using Docker ](http://srivaths.blogspot.fr/2014/08/distrubuted-jmeter-testing-using-docker.html?m=1 )
* [nsinit: per-container resource monitoring of Docker containers on RHEL/Fedora ](http://www.breakage.org/2014/09/03/nsinit-per-container-resource-monitoring-of-docker-containers-on-rhelfedora/ )
2014-09-26 10:23:14 +02:00
2014-09-26 10:47:25 +02:00
### Other
2014-09-26 10:23:14 +02:00
* Presentation: Docker and JBoss - the perfect combination
* [Vidéo ](http://www.youtube.com/watch?v=4uQ6gR_xZhE )
* [Slides ](https://goldmann.pl/presentations/2014-vjbug-docker )
* [Code source ](https://github.com/goldmann/goldmann.pl/tree/master/.presentations/2014-vjbug-docker/demos )
2014-09-26 14:08:20 +02:00
2014-09-21 20:36:41 +02:00
## Books
2014-09-22 08:20:47 +02:00
* [Docker Book ](http://dockerbook.com/ ) by James Turnbul ([@kartar](https://twitter.com/kartar))
2014-09-21 20:36:41 +02:00
## Dev
2014-09-22 08:20:47 +02:00
* [Docker ](https://github.com/docker/docker )
* [Docker Images ](https://hub.docker.com )
* [Docker Cheat Sheet ](https://github.com/wsargent/docker-cheat-sheet ) by [@wsargent ](https://github.com/wsargent )
2014-09-21 20:36:41 +02:00
2014-09-22 21:48:54 +02:00
### Continous Integration / Continous Delivery
2014-09-22 08:20:47 +02:00
* [Drone ](https://github.com/drone/drone ) - https://drone.io/
2014-09-21 20:36:41 +02:00
2014-09-25 22:18:55 +02:00
### Hosting for repositories (registries)
* [Docker Hub ](https://hub.docker.com/ ) (provided by Docker Inc.)
2014-09-26 09:05:44 +02:00
* [Quay.io ](https://quay.io/ ) (part of CoreOS) - Secure hosting for private Docker repositories
2014-09-26 14:08:20 +02:00
* [Reesd ](https://reesd.com/ ) - Private Docker repositories and redundant storage service by [@noteed ](https://github.com/noteed )
2014-09-25 22:18:55 +02:00
2014-09-26 14:11:06 +02:00
### Hosting for containers (Paying Services $$$)
2014-09-26 09:05:44 +02:00
* [Orchard ](https://www.orchardup.com/ ) (part of Docker Inc) - Get a Docker host in the cloud, instantly.
* [StackDock ](https://stackdock.com/ ) - Docker hosting on blazing fast dedicated infrastructure
* [Tutum ](https://www.tutum.co/ ) - Simple hosting for your Docker containers.
2014-09-25 22:18:55 +02:00
2014-09-21 20:36:41 +02:00
### Dev Tools
2014-09-22 13:34:50 +02:00
* [Fig ](https://github.com/docker/fig ) (Fast, isolated development environments using Docker) -- http://www.fig.sh
2014-10-08 19:54:38 +02:00
* [Shutit ](http://ianmiell.github.io/shutit/ ) (a tool for building and maintaining complex Docker deployments) by [@ianmiell ](https://github.com/ianmiell )
2014-11-06 18:35:04 +01:00
* [FuGu ](https://github.com/mattes/fugu ) (a docker run wrapper without orchestration) by [@mattes ](https://github.com/mattes )
2014-11-20 08:26:13 +01:00
* [GoSu ](https://github.com/tianon/gosu ) ("run this specific application as this specific user and get out of the pipeline" -- entrypoint script tool) by [@tianon ](https://github.com/tianon )
2014-09-26 08:31:10 +02:00
* [ns-enter ](https://github.com/jpetazzo/nsenter ) (no more ssh, enter name spaces of container) by [@jpetazzo ](https://github.com/jpetazzo )
2014-09-22 13:34:50 +02:00
* [Squid-in-a-can ](https://github.com/jpetazzo/squid-in-a-can ) (in case of proxy problem) by [@jpetazzo ](https://github.com/jpetazzo/ )
* [docker-gen ](https://github.com/jwilder/docker-gen ) (Generate files from docker container meta-data) by [@jwilder ](https://github.com/jwilder )
2014-10-16 11:00:25 +02:00
* [dockerize ](https://github.com/jwilder/dockerize ) (Utility to simplify running applications in docker containers) by [@jwilder ](https://github.com/jwilder )
2014-09-24 15:56:48 +02:00
* [registrator ](https://github.com/progrium/registrator ) (Service registry bridge for Docker) by [@progrium ](https://github.com/progrium )
2014-09-26 08:29:30 +02:00
* [Boot2Docker ](https://github.com/boot2docker/boot2docker ) (docker for OSX and Windows) -- http://boot2docker.io/
2014-09-26 09:50:52 +02:00
* [OctoHost ](http://www.octohost.io/ ) (Simple web focused Docker based mini-PaaS server. git push to deploy your websites as needed) by [@octohost ](https://github.com/octohost )
2014-11-20 08:32:48 +01:00
2014-09-26 14:09:16 +02:00
### Useful Images
2014-09-26 09:05:44 +02:00
* [Base Image ](https://github.com/phusion/baseimage-docker ) by [@phusion ](https://github.com/phusion/ )
2014-09-25 14:58:39 +02:00
* [Busybox ](https://github.com/jpetazzo/docker-busybox ) (with either `buildroot` or Ubuntu's `busybox-static` ) by [@jpetazzo ](https://github.com/jpetazzo )
* [Busybox ](https://github.com/progrium/busybox ) (with `opkg` ) by [@progrium ](https://github.com/progrium )
2014-09-22 13:34:50 +02:00
* [DockerFile Example ](https://github.com/komljen/dockerfile-examples ) by [@komljen ](https://github.com/komljen )
2014-09-25 14:58:39 +02:00
* [OpenWRT ](http://www.zoobab.com/docker-openwrt-image ) by [@zoobab ](https://github.com/zoobab )
2014-09-26 09:05:44 +02:00
* [Phusion Docker Hub Account ](https://hub.docker.com/u/phusion/ )
2014-09-21 20:36:41 +02:00
2014-09-26 14:08:20 +02:00
### Storing Images
* [Docker Registry ](https://github.com/docker/docker-registry ) (Registry server for Docker (hosting/delivering of repositories and images))
* [Docker Registry Web ](https://github.com/atc-/docker-registry-web ) (A web UI for easy private/local Docker Registry integration) by [@atc- ](https://github.com/atc- )
2014-11-06 18:35:04 +01:00
### Running Containers / Orchestration
2014-09-22 13:34:50 +02:00
* [Shipyard ](https://github.com/shipyard/shipyard ) (Composable Docker Management) -- http://shipyard-project.com/
* [Panamax ](https://github.com/CenturyLinkLabs/panamax-ui/wiki ) (Docker Management for Humans) -- http://panamax.io/
* [Flynn ](https://github.com/flynn/flynn ) (A next generation open source platform as a service (PaaS)) -- https://flynn.io/
* [Deis ](https://github.com/deis/deis ) (Your PaaS, your rules) -- http://deis.io/
2014-09-23 08:29:38 +02:00
* [Gaudi ](https://github.com/marmelab/gaudi ) (Gaudi allows to share multi-component applications, based on Docker, Go, and YAM) -- http://gaudi.io/
2014-09-22 13:34:50 +02:00
* [CoreOS ](https://github.com/coreos ) (Linux for Massive Server Deployments) -- https://coreos.com/
2014-09-26 08:43:56 +02:00
* [Dokku ](https://github.com/progrium/dokku ) (Docker powered mini-Heroku in around 100 lines of Bash) by [@progrium ](https://github.com/progrium )
2014-09-26 00:49:33 +02:00
* [dokku-alt ](https://github.com/dokku-alt/dokku-alt ) (Dokku fork with Dockerfile support, database plugins, ACL and more)
2014-10-01 17:39:52 +02:00
* [cAdvisor ](https://github.com/google/cadvisor ) (Analyzes resource usage and performance characteristics of running containers)
2014-09-26 10:30:47 +02:00
* [Ansible - manage docker containers ](http://docs.ansible.com/docker_module.html )
2014-10-02 07:46:40 +02:00
* [Launch Docker container on Mesos ](https://mesosphere.com/learn/launch-docker-container-on-mesosphere/ ) (Docker plus Mesosphere provides an easy way to automate and scale deployment of containers in a production environment.)
* [Marathon ](https://mesosphere.github.io/marathon/docs/ ) (Marathon is a private PaaS built on Mesos. It automatically handles hardware or software failures and ensures that an app is "always on".)
2014-11-06 18:50:24 +01:00
* [Serf ](https://github.com/hashicorp/serf )Service orchestration and management tool. by [@hashicorp ](https://github.com/hashicorp )
2014-11-20 08:32:48 +01:00
* [Flocker ](https://github.com/ClusterHQ/flocker ) (Flocker is a data volume manager and multi-host Docker cluster management tool) by [@ClusterHQ ](https://github.com/ClusterHQ )
2014-09-21 20:36:41 +02:00
2014-11-04 18:24:31 +01:00
### Networking
2014-11-06 11:53:26 +01:00
* [Weave ](https://github.com/zettio/weave ) (The Docker network) -- Weave creates a virtual network that connects Docker containers deployed across multiple hosts.
### Logging
* [LogJam ](https://github.com/gocardless/logjam )
2014-11-04 18:24:31 +01:00
2014-09-26 08:43:56 +02:00
### Service Discovery
2014-09-26 08:56:14 +02:00
* [docker-consul ](https://github.com/progrium/docker-consul ) by [@progrium ](https://github.com/progrium )
* [etcd ](https://github.com/coreos/etcd ): A highly-available key value store for shared configuration and service discovery
2014-11-06 19:08:06 +01:00
* [Docker Grand Ambassador ](https://github.com/cpuguy83/docker-grand-ambassador ) This is a fully dynamic docker link ambassador. + [Article ](http://docs.docker.com/articles/ambassador_pattern_linking/ )
2014-09-26 08:43:56 +02:00
2014-09-21 20:36:41 +02:00
## Slides
2014-09-22 08:20:47 +02:00
* [Docker Slideshare Account ](http://www.slideshare.net/dotCloud )
* [Docker Security ](http://www.slideshare.net/jpetazzo ) with [@jpetazzo ](https://github.com/jpetazzo )
2014-09-21 20:36:41 +02:00
## Videos
### Main Account
2014-09-22 08:20:47 +02:00
* [Docker Youtube Account ](http://www.youtube.com/user/dockerrun )
* [CenturyLink Labs Docker Interviews ](http://www.youtube.com/playlist?list=PL_q4Fk7SVBCIjyuCBFBItXnzGI3qBa2L1 )
2014-09-25 07:52:01 +02:00
* [YLD Event ](https://www.youtube.com/channel/UCvksXSnLqIVM_uFB7xyrsSg/videos ) Conference about *containers* !!! [@YLDio ](https://twitter.com/YLDio )
2014-09-21 20:36:41 +02:00
### Useful videos
2014-09-23 07:55:53 +02:00
* [Orchestrating Docker containers in production using Fig ](https://www.youtube.com/watch?v=SEtRg8siQWw ) (7:11)
2014-09-25 07:48:46 +02:00
* [Development Environments with Fig ](http://youtu.be/QpSFOHvFyMc ) by Aanand Prasad (17:58)
* [Docker in Production ](http://youtu.be/Glk5d5WP6MI ) by [@jpetazzo ](https://github.com/jpetazzo ) (36:05)
2014-09-23 07:55:53 +02:00
* [Docker: How to Use Your Own Private Registry ](https://www.youtube.com/watch?v=CAewZCBT4PI ) (15:01)
* [Contributing to Docker by Andrew "Tianon" Page (InfoSiftr) ](https://www.youtube.com/watch?v=1jwo8-1HYYg ) (34:31)
* [Performance Analysis of Docker - Jeremy Eder ](https://www.youtube.com/watch?v=6f2E6PKYb0w ) (1:36:58)
* [Docker and SELinux by Daniel Walsh from Red Hat ](https://www.youtube.com/watch?v=zWGFqMuEHdw ) (40:23)
* [Immutable Infrastructure with Docker and EC2 by Michael Bryzek (Gilt) ](https://www.youtube.com/watch?v=GaHzdqFithc ) (42:04)
2014-09-23 08:44:13 +02:00
* [Ansible and Docker HP ](https://www.youtube.com/watch?v=oZ45v8AeE7k ) (32:38)
2014-10-02 08:01:20 +02:00
* [Run Any App on Mesos on Any Infrastructure Using Docker ](https://www.youtube.com/watch?v=u5jd9YT9EsY ) (17:44)
2014-11-08 18:16:12 +01:00
* [Extending Docker with Plugins ](http://vimeo.com/110835013 ) (15:21)
2014-09-22 08:20:47 +02:00
2014-09-25 07:48:46 +02:00
2014-09-26 09:06:57 +02:00
## Interesting Twitter Accounts
2014-09-22 08:20:47 +02:00
* [Docker ](https://twitter.com/docker )
* [Century Link Labs ](https://twitter.com/CenturyLinkLabs )
* [Flux7Labs ](https://twitter.com/Flux7Labs )
* [TutumCloud ](https://twitter.com/tutumcloud )
* [Project Atomic ](https://twitter.com/ProjectAtomic )
* [Openshift By Red Hat ](https://twitter.com/openshift )
2014-09-25 07:52:01 +02:00
* [YLD ](https://twitter.com/YLDio )
### People
2014-09-22 08:20:47 +02:00
* [Solomon Hykes ](https://twitter.com/solomonstre ) Founder of Docker
* [Gabriel Monroy ](https://twitter.com/gabrtv ) Creator of Deis
* [Jérôme Petazzoni ](https://twitter.com/jpetazzo ) Docker Developer
* [Michael Crosby ](https://twitter.com/crosbymichael ) Docker Developer
* [James Turnbull ](https://twitter.com/kartar ) Author of Docker Book
2014-09-24 20:41:21 +02:00
* [Jeff Lindsay ](https://twitter.com/progrium ) Design-minded software architect