Docker

Awesome Docker Awesome

>精选的Docker资源和项目清单 >灵感来自 @sindresorhus'[awesome] [sindresorhus]并通过这些改进amazing contributors.

如果您想贡献,请先阅读[CONTRIBUTING.md] [贡献]. 它包含许多技巧和指南,可帮助您使事情井井有条. 只需单击[README.md] [editreadme]即可提交[拉取请求] [editreadme]. 如果此列表不完整,则可以[贡献] [editreadme]. 这是一个很棒的视频教程,学习如何 contribute on Github

您可以查看来自的更新 TWITTER

> ,帮助整理这些资源,以使新来的人容易找到和理解. 有关提示,请参见如何 [贡献] [贡献]

如果您在此处看到的链接不再适合,可以通过提交[pull request] [editreadme]来改进此文件,以解决此问题. 谢谢!

此列表的创建者和维护者不会接受任何付款方式来接受任何贡献者所做的更改. 该页面绝不是官方的Docker产品. 它是项目链接的列表,由志愿者维护. 欢迎大家贡献力量. 该回购的目的是索引开源项目,而不是为了牟利而做广告.

所有链接均通过以下方式进行监控和测试 awesome_bot 由制成 @dkhamsing

Legend

-被遗弃的:头骨: -Beta:构造: -获利:heavy_dollar_sign:

What is Docker

> Docker是一个开放平台,供开发人员和系统管理员构建,交付和运行分布式应用程序. Docker由便携式引擎,轻量级运行时和打包工具Docker Engine以及用于共享应用程序和自动化工作流的云服务Docker Hub组成,使应用程序可以从组件快速组装,并消除了开发,质量保证和生产环境之间的摩擦. 因此,IT部门可以在笔记本电脑,数据中心VM和任何云上更快地交付并运行相同的应用程序,而无需更改.

Source: What is Docker

Where to start

  • Benefits of using Docker 开发和交付,以及采用的实用路线图.
  • Docker Curriculum :关于Docker入门的综合教程. 教您如何使用Docker以及使用Elastic Beanstalk和Elastic Container Service在AWS上部署dockerized应用程序.
  • Docker Documentation:官方文档
  • Docker Training :heavy_dollar_sign:
  • Docker Tutorial for Beginners (Updated 2019 version) —在此Docker教程中,您将学习所有基础知识,并学习如何容器化Node.js和Go应用程序. 即使您不熟悉这些语言,也应该很容易阅读本教程并使用任何其他语言.
  • Katacoda:使用基于交互式浏览器的实验室学习Docker
  • Learn Docker:循序渐进的教程和更多资源(视频,文章,备忘单),作者: @dwyl
  • Play With Docker :PWD是从初学者到高级用户入门Docker的绝佳方法. Docker直接在您的浏览器中运行.
  • Play With Moby :PWM是基于Web的Moby游乐场,可让您在几秒钟内尝试使用平台的不同组件. 它为您提供了在云中拥有免费的Alpine Linux虚拟机的体验,您可以在其中构建和运行Moby项目,甚至创建集群进行实验.
  • Practical Introduction to Container Terminology 容器技术的前景不仅限于码头工人. 如果没有良好的术语处理,可能很难把握docker和(选择您的最爱,CRI-O,rkt,lxc / lxd)之间的关键区别,或者难以理解开放容器倡议正在采取哪些措施来标准化容器技术.

备忘单,作者:

Where to start (Windows)


Projects

-Moby =开源开发 -Docker CE =基于Moby的免费产品发布 -Docker EE =基于Docker CE的商业产品发布.

> Docker EE与Docker CE在相同的代码基础上,因此也是从Moby构建的,并添加了商业组件,例如“ docker数据中心/通用控制平面”

  • Moby
  • Docker Images
  • Docker Compose (使用Docker定义并运行多容器应用程序)
  • Docker Machine (以容器为中心的世界的机器管理) -[Docker Registry] [distribution](用于打包,运送,存储和交付内容的Docker工具集)
  • Docker Swarm (Swarm:一个Docker本地集群系统)

Container Operations

Container Composition

  • bocker (2) - Write Dockerfile completely in Bash. Extensible and simple. → Reusable by @icy
  • bocker (1):skull:-通过100行bash实现Docker p8952
  • box -使用mruby DSL构建Dockerfile映像,包括展平和层操作
  • Capitan -可组合的docker编排,并添加了脚本支持 @byrnedo.
  • compose_plantuml -通过docker-compose文件生成Plantuml图 @funkwerk
  • Composerize -将docker run命令转换为docker-compose文件
  • crowdr -用于管理多个Docker容器的工具(替代docker-compose) @polonskiy
  • docker-compose-graphviz -通过以下方式将docker-compose.yml文件转换为Graphviz .dot文件 @abesto
  • docker-config-update -实用程序,用于更新docker配置和密钥以通过以下方式在撰写文件中进行部署 @sudo-bmitch
  • draw-compose -实用程序,用于绘制docker组成的架构 @Alexis-benoist
  • elsy -一个基于Docker和Docker Compose的多语言自建工具
  • habitus -Docker的构建流程工具,作者: @cloud66
  • Maestro :skull:-Maestro提供了通过以下方式轻松启动,协调和管理多个Docker容器的功能: @tascanini
  • percheron :skull:-通过组织和智能组织您的Docker容器 @ashmckenzie
  • plash -容器运行和构建引擎-在docker内部运行.
  • rocker-compose :skull:-具有幂等特性的Docker组合工具,用于部署由多个容器组成的应用程序. 通过 @https://github.com/veggiemonk/awesome-docker/blob/master/grammarly
  • rocker :skull:-扩展的Dockerfile构建器 支持多个FROM,MOUNTS,模板等 grammarly.
  • Stacker -Docker撰写模板. Stacker在Docker Compose之上提供了一个抽象层,并提供了更好的DX(开发人员体验).
  • Smalte –在Docker容器中动态配置需要静态配置的应用程序. 通过 @roquie
  • Zodiac :skull:-轻便的工具,可轻松部署和回滚dockerized应用程序. 由[@CenturyLinkLabs] [centurylinklabs]

Deployment and Infrastructure

  • blackfish -CoreOS VM,用于为开发人员和生产人员构建群集集群 @blackfish
  • BosnD -BosnD,boatswain守护程序-动态配置文件编写器和服务重新加载器,用于动态更改容器环境.
  • Centurion -Centurion是适用于Docker舰队的大规模部署工具. 它从Docker注册表中获取容器,并在具有正确环境变量,主机卷映射和端口映射的一组主机上运行它们. 通过 @newrelic
  • Clocker -Clocker创建和管理Docker云基础架构. Clocker支持多节点应用程序的单击部署和运行时管理,这些应用程序作为在多个主机上分布在Docker和Marathon上的容器运行. 它利用[Calico] [calico]和[Weave] [weave]进行联网和 Brooklyn 用于应用程序蓝图. 通过 @brooklyncentral
  • Conduit -Docker的实验性部署系统,作者: @ehazlett
  • depcon -Depcon用Go编写,可让您轻松地将Docker容器部署到Apache Mesos / Marathon,Amazon ECS和Kubernetes. 由[@ContainX] [containx]
  • deploy :skull:-Git和Docker部署工具. 简单的Docker组合工具和全面的集群编排之间的中间立场 @ttiny
  • dockit :skull:-做docker操作并部署gluster容器! 通过 @humblec
  • gitkube -Gitkube是使用git push在Kubernetes上构建和部署docker镜像的工具. 通过 @Hasura.
  • Grafeas -用于容器元数据的通用API,从图像和构建详细信息到安全漏洞. 通过 grafeas
  • Longshoreman :skull:-Longshoreman使用Docker自动化应用程序部署. 只需创建一个Docker存储库(或使用服务),使用AWS或Digital Ocean(或您喜欢的任何东西)配置集群,然后使用类似Heroku的CLI工具部署应用程序. 通过 longshoreman
  • SwarmManagement -Swarm Management是python应用程序,与pip一起安装. 该应用程序通过配置单个yaml文件(描述要部署的堆栈以及要创建的网络,配置或机密),可以轻松管理Docker Swarm.

Monitoring

  • Axibase Collector -Axibase Collector将来自Docker引擎的性能计数器,配置更改和生命周期事件流式传输到Axibase时间序列数据库中,以用于汇总仪表板并与上游监控系统集成.
  • cAdvisor -分析正在运行的容器的资源使用情况和性能特征. 由[@Google] [google]创建
  • dockprom -通过Prometheus,Grafana,cAdvisor,NodeExporter和AlertManager监视Docker主机和容器 @stefanprodan
  • Docker-Alertd -根据Docker容器资源的使用情况/统计信息监视和发送警报
  • Docker-Flow-Monitor -当[@vfarcic] [vfarcic]自动更新或部署新服务时,重新配置Prometheus
  • Dockerana :skull:-Graphite和Grafana的打包版本,专门针对Docker的指标.
  • DockProc -在过程级别监视容器的I / O.
  • Dozzle - Monitor container logs in real-time with a browser or mobile device. @amir20
  • Dynatrace :heavy_dollar_sign:-监视容器化的应用程序,而无需安装代理或修改运行命令
  • Glances -由Python编写的跨平台基于curses的系统监视工具,由 @nicolargo
  • Grafana Docker Dashboard Template -您的Docker,Grafana和Prometheus堆栈的模板[@vegasbrianc] [vegasbrianc]
  • InfluxDB, cAdvisor, Grafana -[@vegasbrianc] [vegasbrianc]将InfluxDB时间序列数据库与Grafana和cAdvisor结合使用
  • LogJam -Logjam是一个日志转发器,旨在通过以下方式侦听本地端口,通过UDP接收日志条目,并将这些消息转发给日志收集服务器(例如logstash), @gocardless
  • Logspout -[@gliderlabs] [gliderlabs]进行Docker容器日志的日志路由
  • monit-docker -监视Docker容器资源使用情况或状态并执行Docker命令或在容器内部. [@decryptus] [decryptus]
  • NexClipper -NexClipper是专门用于Docker,Apache Mesos,Marathon,DC / OS,Mesosphere和Kubernetes的容器监视和性能管理解决方案 @Nexclipper
  • Out-of-the-box Host/Container Monitoring/Logging/Alerting Stack -使用cAdvisor,Prometheus,Grafana进行监视,Elasticsearch,Kibana和Logstash进行日志记录以及使用elastalert和Alertmanager进行警报,开箱即用地进行Docker主机和容器监视,日志记录和警报. 设置5分钟. 内置的[自动Nginx反向代理(jwilder)] [nginxproxy]用于生产的安全模式.
  • SwarmAlert -监视Docker Swarm并在发现没有运行正常服务任务的容器时发送Pushover警报.
  • Zabbix Docker module -Zabbix模块,提供发现运行中的容器,CPU /内存/ blk IO /网络容器指标的信息. 还支持系统化Docker和LXC执行驱动程序. 它是一个动态链接的共享对象库,因此其性能比任何脚本解决方案都要好(〜10倍).
  • Zabbix Docker -使用zabbix LLD功能自动监视容器.

Networking

-[Calico-Docker] [calico]-Calico是一个纯粹的第3层虚拟网络,它允许多个docker-hosts上的容器相互通信. - Flannel -Flannel是一个虚拟网络,为每个主机提供一个子网,供容器运行时使用. 由[@coreos] [coreos] - Freeflow -Linux上的高性能容器覆盖网络. 启用RDMA(在InfiniBand和RoCE上)并加速TCP到裸机的性能. 通过 @Microsoft - netshoot -netshoot容器具有一组强大的网络工具,可通过以下方式帮助解决Docker网络问题 @nicolaka - Pipework -用于Linux容器的软件定义网络,Pipework可与“普通” LXC容器以及出色的Docker一起使用. 由[@jpetazzo] [jpetazzo] -[Weave] [weave](Docker网络)-Weave创建一个虚拟网络,该网络连接部署在多个主机上的Docker容器.

Orchestration

  • athena -具有插件架构的自动化平台,可让您轻松创建和共享服务.
  • blimp :skull:-使用Docker Machine轻松地将容器从一台Docker主机移至另一台Docker主机,显示针对所有主机运行的容器,在多个主机之间复制容器等 @defermat@schvin
  • CloudSlang -CloudSlang是用于创建Docker流程自动化的工作流引擎
  • clusterdock -Docker容器编排,以测试长期运行的集群部署
  • ContainerShip 一个简单的容器管理平台
  • Crane -基于docker内置群的控制平面 @Dataman-Cloud
  • Docker Flow Swarm Listener -Docker Flow Swarm Listener项目将侦听Docker Swarm事件并在发生更改时发送请求. 由[@vfarcic] [vfarcic]
  • gantryd :skull:-一个框架,通过它可以轻松管理跨机器的基于docker的组件 @DevTable
  • Haven -Haven是一个简化的容器管理平台,集成了容器,应用程序,集群,映像和注册表管理. 通过 @codeabovelab
  • Helios :skull:-通过[@spotify] [spotify]在整个服务器群中部署和管理容器的简单平台
  • Kontena -大众应用容器 website
  • Kubernetes -Google的Docker容器的开源编排系统
  • ManageIQ -发现,优化和控制您的混合IT. 通过 ManageIQ
  • Mantl -Mantl是用于快速部署全球分布式服务的现代平台
  • Marathon -马拉松是建立在Mesos之上的私人PaaS. 它会自动处理硬件或软件故障,并确保应用程序“始终在线”
  • Mesos -用于容器,VM和物理主机的资源/作业调度程序 @apache
  • Nebula -旨在管理大规模分布式集群的Docker编排工具.
  • Nomad -轻松部署任何规模的应用程序. 分布式的,高度可用的,支持数据中心的调度程序,作者: @hashicorp
  • Panamax :skull:-一个开源项目,使[@CenturyLinkLabs] [centurylinklabs]的拖放操作像部署拖放一样简单.
  • Rancher -一个开源项目,为[@rancher] [rancher]在生产中提供操作Docker的完整平台.
  • Swarm-cronjob -在Swarm上基于时间的时间表创建作业 @https://github.com/veggiemonk/awesome-docker/blob/master/crazy-max

PaaS

  • Atlantis :skull:-亚特兰蒂斯(Atlantis)是一个基于Docker并使用Go编写的HTTP应用程序的开源PaaS
  • caprover -[以前称为CaptainDuckDuck]自动可扩展Web服务器程序包(自动Docker + nginx)-类固醇上的Heroku
  • Convox Rack -Convox Rack是建立在专家基础架构自动化和最佳实践之上的开源PaaS.
  • Dcw -Docker-compose SSH包装器:一个非常可怜的人PaaS,暴露了容器标签中定义的docker-compose和custom-container命令.
  • Dokku -由Docker驱动的mini-Heroku,可帮助您构建和管理应用程序的生命周期(最初是[@progrium] [progrium])
  • Empire -基于Amazon EC2容器服务(ECS)构建的PaaS
  • Exoframe -一种自托管工具,允许使用Docker进行简单的单命令部署
  • Flynn -下一代开源平台即服务
  • Hephy Workflow -用于Kubernetes的开源PaaS,它在任何Kubernetes集群中都增加了开发人员友好的层,从而使部署和管理应用程序变得容易. 前叉 Deis Workflow
  • Nanobox :heavy_dollar_sign:-一个应用程序开发平台,可创建本地环境,然后可以在云中进行部署和扩展. -[OpenShift] [openshift]-基于[Kubernetes] [kubernetes]构建的开源PaaS,并针对Dockerized应用开发和部署进行了优化 Red Hat
  • Tsuru -Tsuru是可扩展的开源平台即服务软件
  • ZEIT Now :heavy_dollar_sign:-适用于Node.js应用程序或任何具有Dockerfile的应用程序的通用无服务器单命令部署.

Reverse Proxy

  • docker-flow-proxy -每次部署新服务或扩展服务时重新配置代理. 由[@vfarcic] [vfarcic]
  • docker-proxy :skull:-Docker容器的透明代理,在Docker容器中运行. 通过 @silarsis
  • fabio -快速,现代的零配置负载平衡HTTP(S)路由器,用于部署由领事管理的微服务. 通过 @magiconair (弗兰克·施罗德)
  • h2o-proxy :skull:-Docker容器的自动化H2O反向代理. [jwilder / nginx-proxy] [nginxproxy]的替代方法是 @zchee
  • Let's Encrypt Nginx-proxy Companion -用于Nginx代理的轻型随身容器. 它允许自动创建/更新“加密我们的证书”. 通过 @JrCs
  • muguet -用于Docker环境的DNS服务器和反向代理. 通过 @mattallty -[nginx-proxy] [nginxproxy]-[@jwilder] [jwilder]使用docker-gen为Docker容器提供的自动nginx代理
  • Nginx Proxy Manager -精美的Web界面,用于通过SSL代理基于Web的服务. 通过 @jc21
  • Swarm Ingress Router -根据标签将DNS名称路由到Swarm服务. 通过 @tpbowden
  • Swarm Router -一种基于“零配置”服务名称的路由器,适用于docker群模式,具有全新,更安全的方法. 通过 @flavioaiello
  • Træfɪk -用于Docker,Mesos,Consul,Etcd的自动化反向代理和负载平衡器... @EmileVauge

Security

  • Anchor Engine -通过CVE漏洞和自定义安全策略分析图像 @Anchor
  • Aqua Security :heavy_dollar_sign:-在任何平台上保护从开发到生产的基于容器的应用程序的安全
  • bane -[@genuinetools] [genuinetools]用于Docker容器的AppArmor配置文件生成器
  • CIS Docker Benchmark -此[InSpec] [inspec]遵从性配置文件以自动化方式实现CIS Docker 1.12.0 Benchmark,以在生产环境中围绕Docker守护程序和容器提供安全性最佳实践测试. 通过 @dev-sec
  • Clair -Clair是一个开源项目,用于静态分析appc和docker容器中的漏洞. 由[@coreos] [coreos]
  • Dagda -Dagda是一种工具,用于对Docker映像/容器中的已知漏洞,特洛伊木马,病毒,恶意软件和其他恶意威胁进行静态分析,并监视Docker守护程序和运行Docker容器以检测异常活动. 通过 @eliasgranderubio
  • docker-bench-security -用于检查在生产中部署Docker容器的数十种常见最佳实践的脚本. 由[@docker] [docker]
  • docker-explorer -一种有助于对[@Google] [google]进行的离线docker收购进行取证的工具
  • notary -用于运行可信集合并与之交互的服务器和客户端. 通过 @TUF
  • oscap-docker -OpenSCAP提供了oscap-docker工具,该工具用于扫描Docker容器和图像. 通过 OpenSCAP
  • Phonito Security :heavy_dollar_sign:-一个具有持续Kubernetes监视和管道集成功能的Docker漏洞扫描程序.
  • Sysdig Falco -Sysdig Falco是一个开源容器安全监视器. 它可以监视应用程序,容器,主机和网络活动,并在发生未经授权的活动时发出警报.
  • Sysdig Secure :heavy_dollar_sign:-Sysdig Secure通过行为监视和防御来解决运行时安全性,并基于开源Sysdig提供深度的取证,以进行事件响应.
  • Twistlock :heavy_dollar_sign:-Twistlock Security Suite在应用程序的整个生命周期中检测漏洞,加固容器映像并实施安全策略.

Service Discovery

Volume Management / Data

  • Blockbridge :heavy_dollar_sign:-Blockbridge插件是一个卷插件,可用于访问一组可扩展的基于容器的持久性存储选项. 它支持单主机和多主机Docker环境,其功能包括租户隔离,自动配置,加密,安全删除,快照和QoS. 通过 @blockbridge
  • Convoy -开源Docker卷驱动程序,可以在任何地方快照,备份和还原Docker卷. 由[@rancher] [rancher]
  • Docker Machine NFS 为通过OS X上的Docker Machine创建的现有boot2docker框激活NFS.
  • Docker Unison 使用Unison进行快速双向文件夹同步的docker卷容器. 创建以替代OS X上缓慢的boot2docker卷. @leighmcculloch
  • Local Persist 为本地卷指定一个安装点(通过docker volume create创建),以便文件始终存在,因此您可以将其挂载到不同容器中的不同目录.
  • Minio -Docker容器中的S3兼容对象存储服务器
  • Netshare Docker NFS,AWS EFS,Ceph和Samba / CIFS卷插件. 由[@ContainX] [containx]
  • portworx :heavy_dollar_sign:-用于持久,共享和复制卷的分散存储解决方案.
  • quobyte :heavy_dollar_sign:-具有docker卷驱动程序的完全容错的分布式文件系统
  • REX-Ray 提供了与供应商无关的存储编排引擎. 主要设计目标是为Docker,Kubernetes和Mesos提供持久性存储. 通过@thecodeteam (戴尔技术)

User Interface

Desktop

用于管理和监视Docker主机和集群的本机桌面应用程序

Terminal

Web

Docker Images

Base Tools

安装在容器内或设计为以容器形式运行的工具和应用程序 sidecar

  • amicontained -容器自省工具. 找出正在使用的容器运行时以及[@genuinetools] [genuinetools]提供的功能
  • autodock -Docker自动化守护进程,作者: @prologic
  • Chaperone -为Docker容器设计的单个PID1进程. 将用户管理,日志管理,启动,僵尸收获全部打包在一个小程序包中. 通过 @garywiz -[CoreOS] [coreos]-适用于大规模服务器部署的Linux
  • distroless -通过[@GoogleContainerTools] [googlecontainertools]删除操作系统的以语言为中心的docker映像
  • docker-alpine -[@gliderlabs] [gliderlabs]使用Alpine Linux的超小型Docker基本映像_(5MB)_
  • docker-gen -通过[@jwilder] [jwilder]从docker容器元数据生成文件
  • dockerize -通过[@jwilder] [jwilder]简化docker容器中正在运行的应用程序的实用程序
  • GoSu -以该特定用户身份运行该特定应用程序,并通过以下方式退出管道(入口点脚本工具) @tianon
  • is-docker -通过[@sindresorhus] [sindresorhus]检查进程是否在Docker容器中运行
  • lstags -通过跨注册表同步Docker映像 @ivanilves
  • NVIDIA-Docker -[@NVIDIA] [nvidia]的Docker的NVIDIA容器运行时
  • su-exec -这是一个简单的工具,可以简单地以不同的特权执行程序. 该程序将直接被执行,而不是像su和sudo一样像孩子一样运行,从而避免了TTY和信号问题. 为什么要重塑gosu? 这项功能与gosu差不多,但只有10kb,而不是1.8MB. 通过 ncopa
  • supercronic -与crontab兼容的作业运行程序,专门设计用于在以下容器中运行 @aptible
  • TrivialRC -容器的简约运行时配置系统和流程管理器 @vorakl

Builder

旨在帮助或简化构建图像的应用程序

  • buildah - A tool that facilitates building OCI images by @containers
  • BuildKit -通过并发,高效缓存且与Dockerfile无关的构建器工具箱 @moby project
  • container-diff -一种图像工具,用于通过[@GoogleContainerTools] [googlecontainertools]比较和分析容器图像
  • container-factory -通过以下方式从应用程序源代码包生成Docker映像 @mutable
  • copy-docker-image -通过在注册表之间复制Docker映像而无需完整安装Docker @mdlavin
  • Derrick -一种工具可帮助您通过扫描代码自动生成Dockerfile并对应用程序进行dockerize. 通过 @alibaba.
  • dlayer -Docker层的统计收集器 @wercker
  • docker-companion -用Golang编写的命令行工具,用于挤压和解压缩docker镜像 @mudler
  • docker-make -通过单个命令构建,标记和推送一堆相关的docker映像.
  • docker-replay -从正在运行的容器中生成docker run命令和选项. 通过 bcicen
  • DockerMake -用于复杂软件堆栈的可复制Docker映像构建系统. 通过 @avirshup
  • DockerSlim 缩小胖的Docker映像以创建最小的映像.
  • Dockly -Dockly是为减轻应用程序在Docker中打包应用程序的痛苦而制作的宝石 @swipely
  • dockramp :skull:-概念证明:客户端驱动的Docker Image Builder,作者: @jlhawn
  • essex -用于基于Docker的项目的样板:Essex是一个用bash编写的CLI实用程序,用于使用Makefile驱动的工作流程快速设置干净且一致的Docker项目. @jamesbrink
  • HPC Container Maker -由高级Python配方生成Dockerfile,包括[@NVIDIA] [nvidia]的高性能计算组件的构建块
  • img -[@genuinetools] [genuinetools]提供的独立,无守护程序,无特权的Dockerfile和OCI兼容的容器映像生成器
  • kaniko -在Kubernetes中构建容器映像 由[@GoogleContainerTools] [googlecontainertools]
  • makisu -Uber针对Mesos和Kubernetes的快速灵活的非特权映像构建器,具有分布式缓存支持. 通过 @uber
  • MicroBadger -分析图像的内容并添加元数据标签
  • packer -用于构建机器映像的Hashicorp工具,包括与厨师,人偶,ansible等配置管理工具集成的docker映像
  • portainer -通过以下方式构建Docker映像的Apache Mesos框架 @duedil-ltd
  • Production-Ready Python Containers 💲 -用于为Python应用程序创建生产就绪的Docker映像的模板.
  • runlike -通过运行容器来生成docker run命令和选项 @lavie
  • SkinnyWhale :skull:-Skinnywhale帮助您制作更小(以兆字节为单位)的Docker容器.
  • Smith -Micocontainer Builder,可以在构建映像后执行多阶段构建[Oracle] [oracle]
  • werf -Werf(以前称为dapp)有助于实现并支持持续集成和持续交付 @flant
  • Whaler -通过以下方式将Docker映像反转为Dockerfile的程序 @P3GLEG.
  • Whales -通过以下方式自动对应用程序进行泊坞窗管理的工具 @icalialabs.

Dockerfile

  • chaperone-docker -使用Chaperone流程管理器的一组图像,包括精益Alpine图像,LAMP,LEMP和准基本套件.
  • Dockerfile Generator dfg既是Go库又是一个可执行文件,它使用各种输入通道生成有效的Dockerfile.
  • Dockerfile Generator
  • Dockerfile Project -受信任的自动化Docker构建. Dockerfile Project为可在Docker容器上运行的各种流行的开源软件服务维护Dockerfile的中央存储库.
  • dockmoor :construction:-管理Docker映像参考,并帮助使用Docker创建可复制的构建. 通过 @MeneDev
  • Vektorcloud -最小的基于阿尔卑斯的Docker映像的集合

范例:

Linter

Metadata

  • opencontainer - A convention and shared namespace for Docker labels defined by OCI Image Spec.

Registry

用于安全存储Docker映像的服务.

  • Amazon EC2 Container Registry 💲 -Amazon EC2容器注册表(ECR)是完全托管的Docker容器注册表,使开发人员可以轻松存储,管理和部署Docker容器映像.
  • Azure Container Registry 💲 -将Docker私有注册表作为一流的Azure资源进行管理
  • CargoOS -在裸机或云上运行Docker引擎的基本操作系统. 通过 @RedCoolBeans
  • Cloudsmith 💲 -完全托管的软件包管理SaaS,对公共和私有Docker注册管理机构(以及许多其他服务,包括Kubernetes生态系统的Helm图表)提供一流的支持. 具有慷慨的免费层,并且对于开源也完全免费.
  • Cycle.io 💲 -裸金属容器托管.
  • cleanreg -一个小工具,可从实现API v2的Docker注册表中删除映像清单,并通过以下方式将其引用给GC @hcguersoy
  • Docker Hub 由Docker Inc.提供 -[Docker Registry v2] [分发]-用于打包,运送,存储和交付内容的Docker工具集
  • Docket -自定义Docker注册表,允许通过以下方式通过bittorrent快速部署 @netvarun
  • Europa 💲 -私有Docker注册表,支持图像管道和webhooks. 通过 @puppetlabs
  • GCE Container Registry 💲 Google Cloud Platform上的快速私有Docker映像存储
  • GitLab Container Registry -致力于在GitLab CI中使用图像的存储库
  • Harbor 一个开放源代码可信云本机注册表项目,用于存储,签名和扫描内容. 支持复制,用户管理,访问控制和活动审核. 通过 CNCF 以前 VMWare
  • JFrog Artifactory 💲 -Artifact Repository Manager,也可以用作私有Docker Registry
  • Kraken -Uber的高度可扩展的P2P docker注册表,能够在几秒钟内分发TB的数据.
  • Private Docker Registry 💲 -专用的Conainer Registry Service,具有无限的私有存储库,用户,团队,名称空间以及企业级身份验证LDAP / AD / OAuth / SAML.
  • Quay.io 💲 (CoreOS的一部分)-私有Docker存储库的安全托管
  • Rescoyl -私有Docker注册表(免费和开源) @noteed
  • Sonatype Nexus -具有通用支持的存储库,也适用于Docker映像
  • TreeScale -构建和分发基于容器的应用程序. 通过 @tigranbs

Development with Docker

API Client

CI/CD

  • Buddy 💲 -最好的Git,构建和部署工具组合成一个强大的工具,为我们的开发增添了力量.
  • Captain -将您的Git工作流程转换为Docker容器以准备通过以下方式连续交付 @harbur.
  • Cyclone -强大的工作流引擎和端到端管道解决方案,使用Kubernetes本地资源实现 @caicloud.
  • Diun -通过以下方式在Docker注册表上更新映像或存储库时接收通知 @https://github.com/veggiemonk/awesome-docker/blob/master/crazy-max.
  • Docker plugin for Jenkins -docker插件的目的是能够使用docker主机动态配置从属服务器,运行单个构建,然后拆除该从属服务器.
  • Dockupdater -自动使您的Docker服务和Docker容器保持最新
  • Drone -基于Docker构建并使用YAML文件配置的持续集成服务器.
  • GitLab Runner -GitLab已集成CI,可使用GitLab运行程序来测试,构建和部署您的代码.
  • GOCD-Docker在Docker容器中转到服务器和代理进行配置.
  • Microservices Continuous Deployment -持续部署微服务应用程序.
  • mu -通过AWS CodePipeline,CodeBuild和ECS配置容器应用程序的CI / CD的工具 @Stelligent
  • Screwdriver 💲 -专为持续交付而设计的Yahoo OpenSource构建平台.
  • Skipper -通过以下方式轻松地对您的Git存储库进行docker化 @Stratoscale
  • SwarmCI -在Docker Swarm中创建一个分布式的隔离任务管道.
  • Watchtower -自动更新正在运行的Docker容器

Development Environment

  • batect -将构建和测试环境作为代码工具:Dockerized的构建和测试环境可通过以下方式轻松实现 @charleskorn
  • Binci -容器化您的开发工作流程. (以前是DevLab,由 @TechnologyAdvice)
  • Boot2Docker -适用于OSX和Windows的Docker
  • construi -通过以下方式在Docker定义的环境中运行构建 @lstephen
  • Crashcart -将Linux二进制文件侧载到正在运行的容器中,以供[@Oracle] [oracle]进行故障排除
  • dde :construction:-基于Docker的本地开发环境工具集. 通过 @whatwedo
  • Devstep :skull:-由Docker支持的开发环境和由[@fgrehm] [fgrehm]构建的buildpacks
  • Dinghy -在Mac OS X上使用带有Virtualbox,vmware,xhyve或parallels的Docker Machine的另一种使用Docker的方法
  • DIP -CLI实用程序,用于直接配置和与docker-compose配置的应用程序进行交互. 通过 @bibendi
  • DLite -在OSX上使用Docker的最简单方法,无需VM. 通过 @nlf
  • dobi -用于Docker应用程序的构建自动化工具. 通过 @dnephin
  • DockerBuildManagement -生成管理是python应用程序,与pip一起安装. 通过配置单个yaml文件,该文件描述了如何构建,测试,运行或发布容器化解决方案,该应用程序使基于Docker的构建系统管理变得容易.
  • Docker Missing Tools -一组bash命令,用于简化典型的docker dev-ops. 在代码存储库中创建典型的帮助程序脚本(例如“ build.sh”和“ deploy.sh”)的替代方法. 通过 @NandoQuintana.
  • Docker osx dev -在OS X上使用Docker的高效开发环境 @brikis98
  • Docker-Arch -从1个简单的YAML文件生成Web / CLI项目Dockerized开发环境. 通过 @Ph3nol
  • Docker-sync -大大提高了性能(50-70x ),当在Mac OS X / Windows和Linux上使用Docker进行开发时,同时将代码共享给容器. 通过 @EugenMayer
  • docker-vm -通过boot2docker(由Vagrant支持)的简单透明的替代方法 @shyiko
  • Dusty -OS X上的托管Docker开发环境
  • Eclipse Che -具有Docker运行时,云IDE,下一代Eclipse IDE的开发人员工作区服务器
  • EnvCLI -用项目专用的Docker容器替换本地安装的Node,Go,.... 通过 @EnvCLI
  • footloose -旋转看起来像虚拟机的容器-通过 @dlespiau
  • forward2docker :skull:-通过以下方式将端口从本地主机自动转发到在boot2docker VM中运行的Docker容器上的端口的实用程序 @bsideup
  • Lando -Lando适用于想要快速指定并轻松开发项目所需的服务和工具的开发人员. 通过 Tandem
  • Vagga -Vagga是没有守护程序的容器化工具. 这是一个受Vagrant和Docker启发的全用户空间容器引擎,专门针对开发环境 @tailhook

Garbage Collection

Serverless

  • AMP :skull:-用于Docker的开源统一CaaS / FaaS平台,包括电池. 通过 @Appcelerator
  • Apache OpenWhisk -一种无服务器的开源云平台,可以执行各种规模的事件响应功能. 通过 @apache
  • Docker-Lambda -复制实时AWS Lambda环境的Docker映像和测试运行程序. 通过 @lamb-ci
  • Funker -充当Docker容器示例投票应用程序. 通过 @bfirsh
  • IronFunctions -无服务器微服务平台FaaS(功能即服务),该平台使用Docker容器运行任何语言或AWS Lambda函数
  • OpenFaaS -Docker和Kubernetes的完整无服务器功能框架. 通过 OpenFaaS
  • SCAR -无服务器容器感知架构(SCAR)是一种无服务器框架,允许通过以下方式在无服务器环境(例如Lambda)中轻松部署和执行容器(例如Docker): @grycap

Testing

  • Container Structure Test -通过检查命令输出或文件系统内容来验证图像结构的框架. 由[@GoogleContainerTools] [googlecontainertools]
  • dgoss -一种基于YAML的快速工具,用于验证Docker容器.
  • DockerSpec -一个小的Ruby Gem,可以轻松地对Dockerfiles或Docker映像运行RSpec和Serverspec,Infrataster和Capybara测试. 通过 @zuazo
  • Dockunit :skull:-基于Docker的集成测试. 一个简单的基于Node的实用程序,用于运行基于Docker的单元测试. 通过 @dockunit -[InSpec] [inspec]-InSpec是用于基础结构的开放源代码测试框架,具有人类和机器可读的语言,用于指定合规性,安全性和策略要求. 通过 @chef
  • Pumba -Docker的混沌测试工具. 可以部署在kubernetes和CoreOS集群上. 通过 @alexei-led

Wrappers

  • Ansible -管理Docker容器的生命周期. 由RedHat
  • Azk -在本地计算机上协调开发环境 @azukiapp
  • Beluga :skull:-CLI在单个服务器或少量服务器上部署Docker容器 通过 @cortextmedia
  • dexec -用Go语言编写的命令行界面,用于与Docker Exec映像一起运行代码.
  • dockerized -无缝执行容器中的命令.
  • Dray -一种由[@CenturyLinkLabs] [centurylinklabs]管理基于容器的工作流程执行的引擎
  • FuGu -Docker在没有编排的情况下运行包装器 @mattes
  • Shutit -通过以下工具构建和维护复杂的Docker部署的工具 @ianmiell
  • subuser -使在Docker中安全且可移植地运行图形桌面应用程序变得容易
  • Turbo -适用于Docker的简单而强大的实用程序. 由[@ramitsurana] [ramitsurana]
  • udocker -一种在批处理或交互式系统中执行简单docker容器而无需root特权的工具 @inidigo-dc
  • Vagrant - Docker provider -好的起点是 vagrant-docker-example 通过 @bubenkoff

Services based on Docker (💲)

CI Services

  • CircleCI :heavy_dollar_sign:-从构建环境中推送或拉取Docker映像,或者直接在CircleCI上构建并运行容器.
  • CodeFresh :heavy_dollar_sign:-构建,测试和共享Docker应用程序所需的一切. 提供自动化的端到端测试.
  • CodeShip :heavy_dollar_sign:-使用已建立的Docker工作流程,同时使用我们专用于速度和安全性的托管平台来自动化您的测试和部署任务.
  • ConcourseCI :heavy_dollar_sign:-针对开发人员和DevOps团队面向管道的CI SaaS平台.
  • Semaphore CI :heavy_dollar_sign:—一种高性能的云解决方案,可轻松构建,测试和运送容器以进行生产.
  • Shippable :heavy_dollar_sign:-为开发人员和DevOps团队提供的SaaS平台,可显着减少构建,测试和部署代码到生产所需的时间.
  • TravisCI :heavy_dollar_sign:-一个免费的github项目为开发人员和Devops设计了持续集成的Saas平台.

CaaS

  • Amazon ECS :heavy_dollar_sign:-EC2上的一种管理服务,支持Docker容器.
  • Arukas :heavy_dollar_sign:-受Heroku启发的CaaS
  • Azure AKS :heavy_dollar_sign:-简化Kubernetes的管理,部署和操作. 使用完全托管的Kubernetes容器编排服务.
  • Cloud 66 :heavy_dollar_sign:-全栈托管容器管理即服务
  • Codenvy :heavy_dollar_sign:-开发团队的一键式Docker环境和云工作区
  • ContainerShip Cloud :heavy_dollar_sign:-多云容器托管自动化平台.
  • Docker Cloud :heavy_dollar_sign:-前肿瘤
  • Dockhero :heavy_dollar_sign:-Dockhero是一个Heroku插件,它将Docker映像转换为附加到Heroku应用程序的微服务. 目前处于测试阶段.
  • Giant Swarm :heavy_dollar_sign:-简单的微服务基础架构. 在几秒钟内部署您的容器.
  • Google Container Engine :heavy_dollar_sign:-由[Kubernetes] [kubernetes]驱动的Google Cloud Computing上的Docker容器.
  • Jelastic Cloud :heavy_dollar_sign:-“易于使用”的容器托管platfrom,具有自动垂直和水平缩放功能. 全球超过50多家托管服务提供商可用.
  • Mesosphere DC/OS :heavy_dollar_sign:-由Apache Mesos构建的用于数据和容器的集成平台,由 @mesosphere
  • OpenShift Dedicated :heavy_dollar_sign:-一个托管的[OpenShift] [openshift]集群,用于运行由Red Hat管理的Docker容器.
  • Sloppy.io :heavy_dollar_sign:-用于容器部署和托管的多合一解决方案-在德国制造和托管
  • Triton :heavy_dollar_sign:-Joyent提供的弹性容器原生基础架构.

Monitoring Services

  • AppDynamics :heavy_dollar_sign:-AppDynamics可为企业提供有关应用程序性能,用户性能和业务性能的实时洞察,因此它们可以在日益复杂的软件驱动世界中更快地移动.
  • Axibase Time-Series Database :heavy_dollar_sign:-长期保留Docker的容器统计信息和内置仪表板. 使用本机Google cAdvisor存储驱动程序收集.
  • Broadcom Docker Monitoring :heavy_dollar_sign:-Broadcom的敏捷运营解决方案提供了现代Docker监控业务,企业需要加速和优化微服务以及运行它们的动态Docker环境的性能. 监视Docker环境和在其中运行的应用程序. (以前的CA Technologies)
  • Collecting docker logs and stats with Splunk
  • Datadog :heavy_dollar_sign:-Datadog是针对大型云环境的全栈监视服务,该服务聚合来自服务器,数据库和应用程序的指标/事件. 它包括对Docker,Kubernetes和Mesos的支持.
  • Prometheus :heavy_dollar_sign:-开源服务监视系统和时间序列数据库
  • Site24x7 :heavy_dollar_sign:-用于DevOps和IT的Docker监控是SaaS Pay per Host模式
  • SPM for Docker :heavy_dollar_sign:-监视主机和容器指标,Docker事件和日志. 自动日志解析器. 异常检测和警报,以度量和日志. @sematext
  • Sysdig Monitor :heavy_dollar_sign:-Sysdig Monitor既可以用作软件,也可以用作SaaS服务,以使用系统调用来监视,警报容器并对其进行故障排除. 它具有适用于Docker和Kubernetes的特定于容器的功能.

Useful Resources

Awesome Lists

Demos and Examples

  • Webstack-micro 演示Web应用程序,展示了如何使用Docker Compose来将API网关,集中式身份验证,后台工作程序和WebSockets设置为容器化服务.

Good Tips

Raspberry Pi & ARM

Security

Videos

Communities and Meetups

Brazilian

Chinese

English

Russian

Spanish

[贡献]:https://github.com/veggiemonk/awesome-docker/blob/master/.github/CONTRIBUTING.md [calico]:https://github.com/projectcalico/calicoctl [centurylinklabs]:https://github.com/CenturyLinkLabs [containx]:https://github.com/ContainX [coreos]:https://github.com/coreos [cncf]:https://www.cncf.io [crazy-max]:https://github.com/crazy-max [发行]:https://github.com/docker/distribution [docker-for-windows]:https://docs.docker.com/docker-for-windows/ [docker]:https://github.com/docker [editreadme]:https://github.com/veggiemonk/awesome-docker/edit/master/README.md [fgrehm]:https://github.com/fgrehm [gesellix]:https://github.com/gesellix [genuinetools]:https://github.com/genuinetools [gliderlabs]:https://github.com/gliderlabs [google]:https://github.com/google [googlecontainertools]:https://github.com/GoogleContainerTools [检查]:https://github.com/inspec/inspec [jessfraz]:https://github.com/jessfraz [jpetazzo]:https://github.com/jpetazzo [jwilder]:https://github.com/jwilder [kubernetes]:https://kubernetes.io [nvidia]:https://github.com/nvidia [nginxproxy]:https://github.com/jwilder/nginx-proxy [openshift]:https://www.okd.io [oracle]:https://github.com/oracle [progrium]:https://github.com/progrium [ramitsurana]:https://github.com/ramitsurana [牧场主]:https://github.com/rancher [sindresorhus]:https://github.com/sindresorhus/awesome [spotify]:https://github.com/spotify [vegasbrianc]:https://github.com/vegasbrianc [vfarcic]:https://github.com/vfarcic [编织]:https://github.com/weaveworks/weave