123456789101112131415161718192021222324252627282930313233343536373839404142 |
- from diagrams import Cluster, Diagram
- from diagrams.azure.database import DatabaseForMariadbServers
- from diagrams.onprem.inmemory import Redis
- from diagrams.onprem.container import Docker
- from diagrams.onprem.network import Nginx, Internet
- from diagrams.onprem.groupware import Nextcloud
- import diagrams.generic.storage as storage_1
- import diagrams.outscale.storage as storage_2
- from diagrams.azure.identity import Groups
- with Diagram(filename="./assets/dia_nc_pelican", show=False):
- out = Internet("Internet")
- ldap = Groups("LDAP")
- nfs = storage_1.Storage("NFS")
- with Cluster("Interactive workstation"):
- local_storage = storage_2.Storage("local storage")
- with Cluster("Containers"):
- docker = Docker("Docker")
- with Cluster("SSL Proxy"):
- proxy = Nginx("Nginx")
- with Cluster("Web server"):
- nc_frontend = Nextcloud()
- ldap >> nc_frontend << nfs
- with Cluster("Database"):
- nc_db = DatabaseForMariadbServers("MariaDB")
- nc_frontend << nc_db
- with Cluster("Caching"):
- nc_redis = Redis("Redis")
- nc_frontend << nc_redis
- nc_frontend << local_storage
-
- out >> proxy >> nc_frontend
- out << proxy << nc_frontend
-
|