diagrams:让您可以用 Python 代码绘制云系统架构
diagrams即代码。
diagrams让您可以用 Python 代码绘制云系统架构。它的诞生是为了在没有任何设计工具的情况下对新的系统架构设计进行原型设计。您还可以描述或可视化现有的系统架构。目前, Diagrams支持的主要提供商包括:AWS、Azure、GCP、Kubernetes、等...它还支持节点、以及主要框架和语言。Alibaba CloudOracle CloudOn-PremiseSaaSProgramming
图即代码还允许您跟踪任何版本控制系统中的架构图更改。
注意:它不控制任何实际的云资源,也不生成云形成或地形代码。仅用于绘制云系统架构图。
入门
它需要Python 3.6或更高版本,请先检查您的 Python 版本。
它使用Graphviz来渲染图表,因此需要安装 Graphviz才能使用diagrams。安装 graphviz (或已经安装)后,安装diagrams。
brew install graphviz如果您使用的是Homebrew,macOS 用户可以通过下载 Graphviz 。
# using pip (pip3)
$ pip install diagrams
# using pipenv
$ pipenv install diagrams
# using poetry
$ poetry add diagrams
您可以从快速启动开始。查看指南了解更多详细信息,您可以在此处找到所有可用节点列表。
例子
事件处理 有状态架构 高级网络服务 | ||
您可以在示例页面上找到所有示例。
贡献
要为图表做出贡献,请查看贡献指南。
如果您使用图表,请告诉我!我会将您添加到展示页面。(我在做这个工作!) :)
谁使用它?
GitPitch是适合技术会议、培训、开发者倡导者和教育工作者的完美幻灯片解决方案。图表现在作为专用的云图 Markdown 小部件提供,因此您可以直接在任何幻灯片上使用图表进行会议、聚会和培训。
Cloudiscovery可帮助您分析云(AWS/GCP/Azure/阿里巴巴/IBM)帐户中的资源。它允许您基于此图库创建分析的云资源图的图表,以便您可以使用 Cloudiscovery 绘制现有的云基础设施。
Airflow Charts是一个 Airflow 插件,旨在通过图表轻松可视化来自 AWS、GCP、Azure 等提供商的服务级别的 Airflow DAG。
其他语言
- 如果您熟悉 Go,也可以使用go-diagrams。
项目地址:
https://github.com/mingrammer/diagrams