neam / docker-stack
用于维护基于 Docker 的 "每个容器一个进程" 的 12 因素 Web 应用程序的工具包。
This package is not auto-updated.
Last update: 2024-09-14 16:13:38 UTC
README
Neam Labs 使用以下堆栈和镜像以开发、构建、测试、部署和维护基于 PHP+NodeJS 的 Web 应用程序。
作为开源软件发布,以便其他项目可以使用和修改,或在您设置自己的基于 Docker 的堆栈架构时作为参考点和灵感来源。
本仓库中的堆栈和镜像经过验证,适用于本地开发和在 AWS 上使用 Docker Cloud 部署的高性能多节点设置,并且会持续优化以提高速度和可靠性。
要求
- docker 17.12.0-ce (推荐使用 17.12.0-ce+)
- docker-compose 1.18.0 (推荐使用 1.18.0+)
- git
为什么首先选择基于 Docker 的堆栈?
Docker 堆栈允许开发团队将用 PHP、NodeJS、Java 和 Python 等任何组合编写的 Web 应用程序编织在一起,利用 Docker 化的服务(数据库、邮件服务器、任务运行器、消息队列等)。
对于开发者
作为开发团队的一员,基于 Docker 的堆栈使您能够在保持与基于 JavaScript 应用程序的强大 npm install + npm start 组合类似的多平台本地开发工作流的同时,放弃 Vagrant/Puppet/Chef。
docker-compose run php composer install
docker-compose up
因此,在涉及多个开发者的任何团队或项目中,不需要太多时间和麻烦就可以在本地运行项目软件,并且所有团队成员都将运行相同版本的底层操作系统包。
对于 DevOps
维护最佳实践的基于 Docker 的 "每个容器一个进程" 堆栈和开发工作流程,用于您的 12 因素 Web 应用程序。
然后可以将堆栈部署到任何 Docker 主机/群组或通过 Docker Cloud 进行编排,提供高度的开发/生产一致性。
堆栈
在本地构建 Docker 堆栈镜像
常见问题解答
什么是堆栈?
堆栈是由特定环境中的服务组成的应用程序集合。堆栈文件是一个 YAML 格式的文件,定义了一个或多个服务。YAML 参考文档在此处。
堆栈是自动化部署多个相互连接的服务的一种便捷方式,无需逐个定义。
由于堆栈文件还定义了环境变量和相关环境特定配置,因此建议为每个环境(dev、test、prod...)使用一个堆栈文件。
许可
MIT