2014-09-21 14:44:12 -04:00
# Awesome Docker
2014-09-21 13:01:48 -04:00
2014-09-21 14:36:41 -04:00
> A curated list of Docker resources
2014-09-22 15:48:54 -04:00
Inspired by [@sindresorhus ](https://github.com/sindresorhus )' [awesome ](https://github.com/sindresorhus/awesome )
2014-09-22 14:56:11 -04:00
2014-09-25 01:48:46 -04:00
Share some love: add your docker resource by forking / sending pull requests.
2014-09-21 14:36:41 -04:00
2014-09-26 08:08:20 -04: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 14:36:41 -04: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 08:08:20 -04:00
---
2014-09-22 15:48:54 -04:00
* [Useful Articles ](#useful-articles )
2014-09-26 04:47:25 -04:00
* [Main Resources ](#main-resources )
* [General Articles ](#general-articles )
* [Good Tips ](#good-tips )
* [Optimizing Images ](#optimizing-images )
2014-09-26 08:34:11 -04:00
* [Service Discovery ](#service-discovery )
2014-09-26 04:47:25 -04:00
* [Security ](#security )
* [Performances ](#performances )
* [Other ](#other )
2014-09-22 15:48:54 -04:00
* [Books ](#books )
* [Dev ](#dev )
2014-09-26 08:37:17 -04:00
* [Continous Integration / Continous Delivery ](#continous-integration--continous-delivery )
2014-09-25 16:18:55 -04:00
* [Hosting for repositories (registries) ](#hosting-for-repositories-registries )
2014-09-26 08:38:13 -04:00
* [Hosting for containers ](#hosting-for-containers-paying-services- )
2014-09-22 15:52:41 -04:00
* [Dev Tools ](#dev-tools )
2014-09-26 08:39:03 -04:00
* [Useful Images ](#useful-images )
2014-09-26 08:08:20 -04:00
* [Storing Images ](#storing-images )
* [Running Containers ](#running-containers )
2014-11-06 05:53:26 -05:00
* [Networking ](networking )
* [Logging ](#logging )
2014-09-26 02:43:56 -04:00
* [Service Discovery ](#service-discovery )
2014-09-22 15:48:54 -04:00
* [Slides ](#slides )
* [Videos ](#videos )
2014-09-22 15:52:41 -04:00
* [Main Account ](#main-account )
* [Useful videos ](#useful-videos )
2014-09-26 03:06:57 -04:00
* [Interesting Twitter Accounts ](#interesting-twitter-accounts )
2014-09-22 15:48:54 -04:00
----
2014-09-22 02:20:47 -04:00
## Useful Articles
2014-09-21 14:36:41 -04:00
2014-09-26 04:47:25 -04:00
### Main Resources
2014-09-26 02:40:31 -04:00
* [Docker Weekly ](http://blog.docker.com/docker-weekly-archives/ ) Huge resource
2014-09-22 02:20:47 -04:00
* [Century Links Labs ](http://www.centurylinklabs.com/category/docker-posts/ )
2014-09-26 02:40:31 -04:00
* [Valuable Docker Links ](http://www.nkode.io/2014/08/24/valuable-docker-links.html ) Very complete
2014-09-23 02:39:55 -04:00
* [Docker Ecosystem ](http://www.mindmeister.com/389671722/docker-ecosystem ) (Mind Map) < --- MUST SEE
2014-09-22 02:20:47 -04:00
* [Blog ](http://jpetazzo.github.io/ ) of [@jpetazzo ](https://github.com/jpetazzo )
2014-09-26 02:56:14 -04:00
* [Blog ](http://progrium.com/blog/ ) of [@progrium ](https://github.com/progrium )
2014-10-16 05:00:25 -04:00
* [Blog ](http://jasonwilder.com/ ) of [@jwilder ](https://github.com/jwilder )
2014-11-12 03:29:13 -05:00
* [Digital Ocean Community ](https://www.digitalocean.com/community/search?primary_filter=tutorials&query=docker )
2014-09-26 04:47:25 -04:00
### General Articles
2014-09-26 02:56:14 -04: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 04:47:25 -04: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 15:36:14 -04:00
* [Deploying NGINX with Docker ](http://nginx.com/blog/deploying-nginx-nginx-plus-docker/ )
2014-10-24 02:23:45 -04:00
* [Eight Docker Development Patterns ](http://www.hokstad.com/docker/patterns )
2014-09-26 08:32:15 -04:00
2014-09-26 04:47:25 -04:00
### Good Tips
2014-09-22 06:55:07 -04: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 05:01:34 -04: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 04:47:25 -04:00
* [Using NSEnter with Boot2Docker ](http://ro14nd.de/NSEnter-with-Boot2Docker/ )
2014-10-16 05:00:25 -04: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 11:17:58 -04:00
* [Building good docker images ](http://jonathan.bergknoff.com/journal/building-good-docker-images ) by [@jbergknoff ](https://github.com/jbergknoff )
2014-11-05 01:48:18 -05:00
* [10 Things Not To Forget Before Deploying Docker In Production ](http://www.slideshare.net/rightscale/docker-meetup-40826948 )
2014-11-06 12:53:43 -05: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 04:47:25 -04:00
### Optimizing Images
2014-09-26 04:12:59 -04: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 01:48:54 -04: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 07:19:47 -04: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 04:47:25 -04: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 08:34:11 -04:00
### Service Discovery
* [@progrium ](https://github.com/progrium ) Service Discovery articles series:
2014-11-06 13:08:06 -05:00
* [Consul Service Discovery with Docker ](http://progrium.com/blog/2014/08/20/consul-service-discovery-with-docker/ )
2014-09-26 08:34:11 -04: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 04:47:25 -04:00
### Security
2014-09-26 04:12:59 -04:00
* [Docker and SELinux ](http://www.projectatomic.io/docs/docker-and-selinux/ )
2014-09-26 04:47:25 -04:00
* [Bringing new security features to Docker ](https://opensource.com/business/14/9/security-for-docker )
2014-09-26 08:34:51 -04:00
2014-09-26 08:36:25 -04:00
### Performances
2014-09-26 04:12:59 -04: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 04:23:14 -04:00
2014-09-26 04:47:25 -04:00
### Other
2014-09-26 04:23:14 -04: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 08:08:20 -04:00
2014-09-21 14:36:41 -04:00
## Books
2014-09-22 02:20:47 -04:00
* [Docker Book ](http://dockerbook.com/ ) by James Turnbul ([@kartar](https://twitter.com/kartar))
2014-09-21 14:36:41 -04:00
## Dev
2014-09-22 02:20:47 -04: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 14:36:41 -04:00
2014-09-22 15:48:54 -04:00
### Continous Integration / Continous Delivery
2014-09-22 02:20:47 -04:00
* [Drone ](https://github.com/drone/drone ) - https://drone.io/
2014-09-21 14:36:41 -04:00
2014-09-25 16:18:55 -04:00
### Hosting for repositories (registries)
* [Docker Hub ](https://hub.docker.com/ ) (provided by Docker Inc.)
2014-09-26 03:05:44 -04:00
* [Quay.io ](https://quay.io/ ) (part of CoreOS) - Secure hosting for private Docker repositories
2014-09-26 08:08:20 -04:00
* [Reesd ](https://reesd.com/ ) - Private Docker repositories and redundant storage service by [@noteed ](https://github.com/noteed )
2014-09-25 16:18:55 -04:00
2014-09-26 08:11:06 -04:00
### Hosting for containers (Paying Services $$$)
2014-09-26 03:05:44 -04: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 16:18:55 -04:00
2014-09-21 14:36:41 -04:00
### Dev Tools
2014-09-22 07:34:50 -04:00
* [Fig ](https://github.com/docker/fig ) (Fast, isolated development environments using Docker) -- http://www.fig.sh
2014-10-08 13:54:38 -04: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 12:35:04 -05:00
* [FuGu ](https://github.com/mattes/fugu ) (a docker run wrapper without orchestration) by [@mattes ](https://github.com/mattes )
2014-11-20 02:26:13 -05: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-22 07:34:50 -04:00
* [Sandstorm ](https://github.com/sandstorm-io/sandstorm ) (Personal Cloud Sandbox /!\ uses LXC, not docker, but it's so nice) -- https://sandstorm.io/
2014-09-26 02:31:10 -04: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 07:34:50 -04: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 05:00:25 -04:00
* [dockerize ](https://github.com/jwilder/dockerize ) (Utility to simplify running applications in docker containers) by [@jwilder ](https://github.com/jwilder )
2014-09-24 09:56:48 -04:00
* [registrator ](https://github.com/progrium/registrator ) (Service registry bridge for Docker) by [@progrium ](https://github.com/progrium )
2014-09-26 02:29:30 -04:00
* [Boot2Docker ](https://github.com/boot2docker/boot2docker ) (docker for OSX and Windows) -- http://boot2docker.io/
2014-09-26 03:50:52 -04: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-09-21 14:36:41 -04:00
2014-09-26 08:09:16 -04:00
### Useful Images
2014-09-26 03:05:44 -04:00
* [Base Image ](https://github.com/phusion/baseimage-docker ) by [@phusion ](https://github.com/phusion/ )
2014-09-25 08:58:39 -04: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 07:34:50 -04:00
* [DockerFile Example ](https://github.com/komljen/dockerfile-examples ) by [@komljen ](https://github.com/komljen )
2014-09-25 08:58:39 -04:00
* [OpenWRT ](http://www.zoobab.com/docker-openwrt-image ) by [@zoobab ](https://github.com/zoobab )
2014-09-26 03:05:44 -04:00
* [Phusion Docker Hub Account ](https://hub.docker.com/u/phusion/ )
2014-09-21 14:36:41 -04:00
2014-09-26 08:08:20 -04: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 12:35:04 -05:00
### Running Containers / Orchestration
2014-09-22 07:34:50 -04: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 02:29:38 -04: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 07:34:50 -04:00
* [CoreOS ](https://github.com/coreos ) (Linux for Massive Server Deployments) -- https://coreos.com/
2014-09-26 02:43:56 -04: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-25 18:49:33 -04:00
* [dokku-alt ](https://github.com/dokku-alt/dokku-alt ) (Dokku fork with Dockerfile support, database plugins, ACL and more)
2014-10-01 11:39:52 -04:00
* [cAdvisor ](https://github.com/google/cadvisor ) (Analyzes resource usage and performance characteristics of running containers)
2014-09-26 04:30:47 -04:00
* [Ansible - manage docker containers ](http://docs.ansible.com/docker_module.html )
2014-10-02 01:46:40 -04: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 12:50:24 -05:00
* [Serf ](https://github.com/hashicorp/serf )Service orchestration and management tool. by [@hashicorp ](https://github.com/hashicorp )
2014-09-21 14:36:41 -04:00
2014-11-04 12:24:31 -05:00
### Networking
2014-11-06 05:53:26 -05: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 12:24:31 -05:00
2014-09-26 02:43:56 -04:00
### Service Discovery
2014-09-26 02:56:14 -04: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 13:08:06 -05: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 02:43:56 -04:00
2014-09-21 14:36:41 -04:00
## Slides
2014-09-22 02:20:47 -04: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 14:36:41 -04:00
## Videos
### Main Account
2014-09-22 02:20:47 -04: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 01:52:01 -04:00
* [YLD Event ](https://www.youtube.com/channel/UCvksXSnLqIVM_uFB7xyrsSg/videos ) Conference about *containers* !!! [@YLDio ](https://twitter.com/YLDio )
2014-09-21 14:36:41 -04:00
### Useful videos
2014-09-23 01:55:53 -04:00
* [Orchestrating Docker containers in production using Fig ](https://www.youtube.com/watch?v=SEtRg8siQWw ) (7:11)
2014-09-25 01:48:46 -04: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 01:55:53 -04: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 02:44:13 -04:00
* [Ansible and Docker HP ](https://www.youtube.com/watch?v=oZ45v8AeE7k ) (32:38)
2014-10-02 02:01:20 -04:00
* [Run Any App on Mesos on Any Infrastructure Using Docker ](https://www.youtube.com/watch?v=u5jd9YT9EsY ) (17:44)
2014-11-08 12:16:12 -05:00
* [Extending Docker with Plugins ](http://vimeo.com/110835013 ) (15:21)
2014-09-22 02:20:47 -04:00
2014-09-25 01:48:46 -04:00
2014-09-26 03:06:57 -04:00
## Interesting Twitter Accounts
2014-09-22 02:20:47 -04: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 01:52:01 -04:00
* [YLD ](https://twitter.com/YLDio )
### People
2014-09-22 02:20:47 -04: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 14:41:21 -04:00
* [Jeff Lindsay ](https://twitter.com/progrium ) Design-minded software architect