Refine public docs diagrams

This commit is contained in:
git
2026-05-13 09:48:45 +10:00
parent 02033cd3f9
commit 1b679a4f09
10 changed files with 2071 additions and 4233 deletions
+194 -324
View File
@@ -1,401 +1,271 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.43.0 (0)
<!-- Generated by graphviz version 12.2.1 (0)
-->
<!-- Title: PhysicalTopology Pages: 1 -->
<svg width="297pt" height="2086pt"
viewBox="0.00 0.00 297.00 2086.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 2082)">
<svg width="591pt" height="2761pt"
viewBox="0.00 0.00 590.50 2761.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 2757)">
<title>PhysicalTopology</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-2082 293,-2082 293,4 -4,4"/>
<polygon fill="white" stroke="none" points="-4,4 -4,-2757 586.5,-2757 586.5,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_docker</title>
<path fill="#eef3ff" stroke="#c7d6f5" d="M29,-8C29,-8 269,-8 269,-8 275,-8 281,-14 281,-20 281,-20 281,-1975 281,-1975 281,-1981 275,-1987 269,-1987 269,-1987 29,-1987 29,-1987 23,-1987 17,-1981 17,-1975 17,-1975 17,-20 17,-20 17,-14 23,-8 29,-8"/>
<text text-anchor="middle" x="149" y="-1971.8" font-family="Helvetica,sans-Serif" font-size="14.00">docker</text>
<path fill="#eff6ff" stroke="#93c5fd" d="M12,-8C12,-8 199.25,-8 199.25,-8 205.25,-8 211.25,-14 211.25,-20 211.25,-20 211.25,-2522 211.25,-2522 211.25,-2528 205.25,-2534 199.25,-2534 199.25,-2534 12,-2534 12,-2534 6,-2534 0,-2528 0,-2522 0,-2522 0,-20 0,-20 0,-14 6,-8 12,-8"/>
<text text-anchor="middle" x="105.62" y="-2516.7" font-family="Helvetica,sans-Serif" font-size="14.00">docker host</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_docker_apps</title>
<path fill="none" stroke="#bfdbfe" stroke-dasharray="5,2" d="M43.75,-16C43.75,-16 166.5,-16 166.5,-16 172.5,-16 178.5,-22 178.5,-28 178.5,-28 178.5,-1457 178.5,-1457 178.5,-1463 172.5,-1469 166.5,-1469 166.5,-1469 43.75,-1469 43.75,-1469 37.75,-1469 31.75,-1463 31.75,-1457 31.75,-1457 31.75,-28 31.75,-28 31.75,-22 37.75,-16 43.75,-16"/>
<text text-anchor="middle" x="105.12" y="-1451.7" font-family="Helvetica,sans-Serif" font-size="14.00">apps</text>
</g>
<g id="clust3" class="cluster">
<title>cluster_docker_automation</title>
<path fill="none" stroke="#bfdbfe" stroke-dasharray="5,2" d="M70.25,-1478C70.25,-1478 141,-1478 141,-1478 147,-1478 153,-1484 153,-1490 153,-1490 153,-1543 153,-1543 153,-1549 147,-1555 141,-1555 141,-1555 70.25,-1555 70.25,-1555 64.25,-1555 58.25,-1549 58.25,-1543 58.25,-1543 58.25,-1490 58.25,-1490 58.25,-1484 64.25,-1478 70.25,-1478"/>
<text text-anchor="middle" x="105.62" y="-1537.7" font-family="Helvetica,sans-Serif" font-size="14.00">automation</text>
</g>
<g id="clust4" class="cluster">
<title>cluster_docker_edge_proxy_auth</title>
<path fill="none" stroke="#bfdbfe" stroke-dasharray="5,2" d="M51.62,-1564C51.62,-1564 158.62,-1564 158.62,-1564 164.62,-1564 170.62,-1570 170.62,-1576 170.62,-1576 170.62,-1801 170.62,-1801 170.62,-1807 164.62,-1813 158.62,-1813 158.62,-1813 51.62,-1813 51.62,-1813 45.62,-1813 39.62,-1807 39.62,-1801 39.62,-1801 39.62,-1576 39.62,-1576 39.62,-1570 45.62,-1564 51.62,-1564"/>
<text text-anchor="middle" x="105.12" y="-1795.7" font-family="Helvetica,sans-Serif" font-size="14.00">edge/proxy/auth</text>
</g>
<g id="clust5" class="cluster">
<title>cluster_docker_monitoring</title>
<path fill="none" stroke="#bfdbfe" stroke-dasharray="5,2" d="M66.62,-1822C66.62,-1822 143.62,-1822 143.62,-1822 149.62,-1822 155.62,-1828 155.62,-1834 155.62,-1834 155.62,-2059 155.62,-2059 155.62,-2065 149.62,-2071 143.62,-2071 143.62,-2071 66.62,-2071 66.62,-2071 60.62,-2071 54.62,-2065 54.62,-2059 54.62,-2059 54.62,-1834 54.62,-1834 54.62,-1828 60.62,-1822 66.62,-1822"/>
<text text-anchor="middle" x="105.12" y="-2053.7" font-family="Helvetica,sans-Serif" font-size="14.00">monitoring</text>
</g>
<g id="clust6" class="cluster">
<title>cluster_docker_storage_database_support</title>
<path fill="none" stroke="#bfdbfe" stroke-dasharray="5,2" d="M20,-2080C20,-2080 191.25,-2080 191.25,-2080 197.25,-2080 203.25,-2086 203.25,-2092 203.25,-2092 203.25,-2489 203.25,-2489 203.25,-2495 197.25,-2501 191.25,-2501 191.25,-2501 20,-2501 20,-2501 14,-2501 8,-2495 8,-2489 8,-2489 8,-2092 8,-2092 8,-2086 14,-2080 20,-2080"/>
<text text-anchor="middle" x="105.62" y="-2483.7" font-family="Helvetica,sans-Serif" font-size="14.00">storage/database/support</text>
</g>
<g id="clust7" class="cluster">
<title>cluster_raspberrypi</title>
<path fill="#eef3ff" stroke="#c7d6f5" d="M20,-1995C20,-1995 249.5,-1995 249.5,-1995 255.5,-1995 261.5,-2001 261.5,-2007 261.5,-2007 261.5,-2058 261.5,-2058 261.5,-2064 255.5,-2070 249.5,-2070 249.5,-2070 20,-2070 20,-2070 14,-2070 8,-2064 8,-2058 8,-2058 8,-2007 8,-2007 8,-2001 14,-1995 20,-1995"/>
<text text-anchor="middle" x="134.75" y="-2054.8" font-family="Helvetica,sans-Serif" font-size="14.00">raspberrypi</text>
<path fill="#eff6ff" stroke="#93c5fd" d="M52.25,-2542C52.25,-2542 159,-2542 159,-2542 165,-2542 171,-2548 171,-2554 171,-2554 171,-2648 171,-2648 171,-2654 165,-2660 159,-2660 159,-2660 52.25,-2660 52.25,-2660 46.25,-2660 40.25,-2654 40.25,-2648 40.25,-2648 40.25,-2554 40.25,-2554 40.25,-2548 46.25,-2542 52.25,-2542"/>
<text text-anchor="middle" x="105.62" y="-2642.7" font-family="Helvetica,sans-Serif" font-size="14.00">raspberrypi host</text>
</g>
<!-- host:docker -->
<g id="node1" class="node">
<title>host:docker</title>
<polygon fill="#d4e3ff" stroke="black" points="79,-1004 29,-1004 25,-1000 25,-968 75,-968 79,-972 79,-1004"/>
<polyline fill="none" stroke="black" points="75,-1000 25,-1000 "/>
<polyline fill="none" stroke="black" points="75,-1000 75,-968 "/>
<polyline fill="none" stroke="black" points="75,-1000 79,-1004 "/>
<text text-anchor="middle" x="52" y="-983.5" font-family="Helvetica,sans-Serif" font-size="10.00">docker</text>
<g id="clust8" class="cluster">
<title>cluster_raspberrypi_apps</title>
<path fill="none" stroke="#bfdbfe" stroke-dasharray="5,2" d="M63.62,-2550C63.62,-2550 146.62,-2550 146.62,-2550 152.62,-2550 158.62,-2556 158.62,-2562 158.62,-2562 158.62,-2615 158.62,-2615 158.62,-2621 152.62,-2627 146.62,-2627 146.62,-2627 63.62,-2627 63.62,-2627 57.62,-2627 51.62,-2621 51.62,-2615 51.62,-2615 51.62,-2562 51.62,-2562 51.62,-2556 57.62,-2550 63.62,-2550"/>
<text text-anchor="middle" x="105.12" y="-2609.7" font-family="Helvetica,sans-Serif" font-size="14.00">apps</text>
</g>
<!-- svc:authelia -->
<g id="node2" class="node">
<title>svc:authelia</title>
<path fill="#dff2e1" stroke="black" d="M223.5,-52C223.5,-52 191.5,-52 191.5,-52 185.5,-52 179.5,-46 179.5,-40 179.5,-40 179.5,-28 179.5,-28 179.5,-22 185.5,-16 191.5,-16 191.5,-16 223.5,-16 223.5,-16 229.5,-16 235.5,-22 235.5,-28 235.5,-28 235.5,-40 235.5,-40 235.5,-46 229.5,-52 223.5,-52"/>
<text text-anchor="middle" x="207.5" y="-31.5" font-family="Helvetica,sans-Serif" font-size="10.00">authelia</text>
</g>
<!-- host:docker&#45;&gt;svc:authelia -->
<g id="edge1" class="edge">
<title>host:docker&#45;&gt;svc:authelia</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M30,-967.83C30,-836.22 30,-34 30,-34 30,-34 169.37,-34 169.37,-34"/>
<polygon fill="#6b7280" stroke="#6b7280" points="169.37,-37.5 179.37,-34 169.37,-30.5 169.37,-37.5"/>
<g id="clust9" class="cluster">
<title>cluster_legend</title>
<path fill="none" stroke="#d1d5db" d="M71.88,-2668C71.88,-2668 562.5,-2668 562.5,-2668 568.5,-2668 574.5,-2674 574.5,-2680 574.5,-2680 574.5,-2733 574.5,-2733 574.5,-2739 568.5,-2745 562.5,-2745 562.5,-2745 71.88,-2745 71.88,-2745 65.88,-2745 59.88,-2739 59.88,-2733 59.88,-2733 59.88,-2680 59.88,-2680 59.88,-2674 65.88,-2668 71.88,-2668"/>
<text text-anchor="middle" x="317.19" y="-2727.7" font-family="Helvetica,sans-Serif" font-size="14.00">Legend</text>
</g>
<!-- svc:crowdsec -->
<g id="node3" class="node">
<g id="node1" class="node">
<title>svc:crowdsec</title>
<path fill="#dff2e1" stroke="black" d="M226.5,-120C226.5,-120 188.5,-120 188.5,-120 182.5,-120 176.5,-114 176.5,-108 176.5,-108 176.5,-96 176.5,-96 176.5,-90 182.5,-84 188.5,-84 188.5,-84 226.5,-84 226.5,-84 232.5,-84 238.5,-90 238.5,-96 238.5,-96 238.5,-108 238.5,-108 238.5,-114 232.5,-120 226.5,-120"/>
<text text-anchor="middle" x="207.5" y="-99.5" font-family="Helvetica,sans-Serif" font-size="10.00">crowdsec</text>
</g>
<!-- host:docker&#45;&gt;svc:crowdsec -->
<g id="edge2" class="edge">
<title>host:docker&#45;&gt;svc:crowdsec</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M34,-967.94C34,-842.17 34,-102 34,-102 34,-102 166.48,-102 166.48,-102"/>
<polygon fill="#6b7280" stroke="#6b7280" points="166.48,-105.5 176.48,-102 166.48,-98.5 166.48,-105.5"/>
</g>
<!-- svc:docker&#45;socket&#45;proxy -->
<g id="node4" class="node">
<title>svc:docker&#45;socket&#45;proxy</title>
<path fill="#dff2e1" stroke="black" d="M253.5,-188C253.5,-188 161.5,-188 161.5,-188 155.5,-188 149.5,-182 149.5,-176 149.5,-176 149.5,-164 149.5,-164 149.5,-158 155.5,-152 161.5,-152 161.5,-152 253.5,-152 253.5,-152 259.5,-152 265.5,-158 265.5,-164 265.5,-164 265.5,-176 265.5,-176 265.5,-182 259.5,-188 253.5,-188"/>
<text text-anchor="middle" x="207.5" y="-167.5" font-family="Helvetica,sans-Serif" font-size="10.00">docker&#45;socket&#45;proxy</text>
</g>
<!-- host:docker&#45;&gt;svc:docker&#45;socket&#45;proxy -->
<g id="edge3" class="edge">
<title>host:docker&#45;&gt;svc:docker&#45;socket&#45;proxy</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M38,-967.81C38,-847.41 38,-170 38,-170 38,-170 139.17,-170 139.17,-170"/>
<polygon fill="#6b7280" stroke="#6b7280" points="139.17,-173.5 149.17,-170 139.17,-166.5 139.17,-173.5"/>
<path fill="#dcfce7" stroke="black" d="M124,-60C124,-60 86.25,-60 86.25,-60 80.25,-60 74.25,-54 74.25,-48 74.25,-48 74.25,-36 74.25,-36 74.25,-30 80.25,-24 86.25,-24 86.25,-24 124,-24 124,-24 130,-24 136,-30 136,-36 136,-36 136,-48 136,-48 136,-54 130,-60 124,-60"/>
<text text-anchor="middle" x="105.12" y="-38.88" font-family="Helvetica,sans-Serif" font-size="10.00">crowdsec</text>
</g>
<!-- svc:docker&#45;update&#45;exporter -->
<g id="node5" class="node">
<g id="node2" class="node">
<title>svc:docker&#45;update&#45;exporter</title>
<path fill="#dff2e1" stroke="black" d="M261,-256C261,-256 154,-256 154,-256 148,-256 142,-250 142,-244 142,-244 142,-232 142,-232 142,-226 148,-220 154,-220 154,-220 261,-220 261,-220 267,-220 273,-226 273,-232 273,-232 273,-244 273,-244 273,-250 267,-256 261,-256"/>
<text text-anchor="middle" x="207.5" y="-235.5" font-family="Helvetica,sans-Serif" font-size="10.00">docker&#45;update&#45;exporter</text>
</g>
<!-- host:docker&#45;&gt;svc:docker&#45;update&#45;exporter -->
<g id="edge4" class="edge">
<title>host:docker&#45;&gt;svc:docker&#45;update&#45;exporter</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M79.25,-975.2C107.63,-975.2 148,-975.2 148,-975.2 148,-975.2 148,-266.22 148,-266.22"/>
<polygon fill="#6b7280" stroke="#6b7280" points="151.5,-266.22 148,-256.22 144.5,-266.22 151.5,-266.22"/>
<path fill="#dcfce7" stroke="black" d="M158.5,-146C158.5,-146 51.75,-146 51.75,-146 45.75,-146 39.75,-140 39.75,-134 39.75,-134 39.75,-122 39.75,-122 39.75,-116 45.75,-110 51.75,-110 51.75,-110 158.5,-110 158.5,-110 164.5,-110 170.5,-116 170.5,-122 170.5,-122 170.5,-134 170.5,-134 170.5,-140 164.5,-146 158.5,-146"/>
<text text-anchor="middle" x="105.12" y="-124.88" font-family="Helvetica,sans-Serif" font-size="10.00">docker&#45;update&#45;exporter</text>
</g>
<!-- svc:error&#45;pages -->
<g id="node6" class="node">
<g id="node3" class="node">
<title>svc:error&#45;pages</title>
<path fill="#dff2e1" stroke="black" d="M232,-324C232,-324 183,-324 183,-324 177,-324 171,-318 171,-312 171,-312 171,-300 171,-300 171,-294 177,-288 183,-288 183,-288 232,-288 232,-288 238,-288 244,-294 244,-300 244,-300 244,-312 244,-312 244,-318 238,-324 232,-324"/>
<text text-anchor="middle" x="207.5" y="-303.5" font-family="Helvetica,sans-Serif" font-size="10.00">error&#45;pages</text>
</g>
<!-- host:docker&#45;&gt;svc:error&#45;pages -->
<g id="edge5" class="edge">
<title>host:docker&#45;&gt;svc:error&#45;pages</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M42,-967.81C42,-859.67 42,-306 42,-306 42,-306 160.77,-306 160.77,-306"/>
<polygon fill="#6b7280" stroke="#6b7280" points="160.77,-309.5 170.77,-306 160.77,-302.5 160.77,-309.5"/>
<path fill="#dcfce7" stroke="black" d="M129.25,-232C129.25,-232 81,-232 81,-232 75,-232 69,-226 69,-220 69,-220 69,-208 69,-208 69,-202 75,-196 81,-196 81,-196 129.25,-196 129.25,-196 135.25,-196 141.25,-202 141.25,-208 141.25,-208 141.25,-220 141.25,-220 141.25,-226 135.25,-232 129.25,-232"/>
<text text-anchor="middle" x="105.12" y="-210.88" font-family="Helvetica,sans-Serif" font-size="10.00">error&#45;pages</text>
</g>
<!-- svc:gitea -->
<g id="node7" class="node">
<g id="node4" class="node">
<title>svc:gitea</title>
<path fill="#dff2e1" stroke="black" d="M222.5,-392C222.5,-392 192.5,-392 192.5,-392 186.5,-392 180.5,-386 180.5,-380 180.5,-380 180.5,-368 180.5,-368 180.5,-362 186.5,-356 192.5,-356 192.5,-356 222.5,-356 222.5,-356 228.5,-356 234.5,-362 234.5,-368 234.5,-368 234.5,-380 234.5,-380 234.5,-386 228.5,-392 222.5,-392"/>
<text text-anchor="middle" x="207.5" y="-371.5" font-family="Helvetica,sans-Serif" font-size="10.00">gitea</text>
</g>
<!-- host:docker&#45;&gt;svc:gitea -->
<g id="edge6" class="edge">
<title>host:docker&#45;&gt;svc:gitea</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M46,-967.68C46,-865.85 46,-374 46,-374 46,-374 170.47,-374 170.47,-374"/>
<polygon fill="#6b7280" stroke="#6b7280" points="170.47,-377.5 180.47,-374 170.47,-370.5 170.47,-377.5"/>
</g>
<!-- svc:gitea&#45;runner -->
<g id="node8" class="node">
<title>svc:gitea&#45;runner</title>
<path fill="#dff2e1" stroke="black" d="M234,-460C234,-460 181,-460 181,-460 175,-460 169,-454 169,-448 169,-448 169,-436 169,-436 169,-430 175,-424 181,-424 181,-424 234,-424 234,-424 240,-424 246,-430 246,-436 246,-436 246,-448 246,-448 246,-454 240,-460 234,-460"/>
<text text-anchor="middle" x="207.5" y="-439.5" font-family="Helvetica,sans-Serif" font-size="10.00">gitea&#45;runner</text>
</g>
<!-- host:docker&#45;&gt;svc:gitea&#45;runner -->
<g id="edge7" class="edge">
<title>host:docker&#45;&gt;svc:gitea&#45;runner</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M50,-967.9C50,-873.51 50,-442 50,-442 50,-442 158.97,-442 158.97,-442"/>
<polygon fill="#6b7280" stroke="#6b7280" points="158.97,-445.5 168.97,-442 158.97,-438.5 158.97,-445.5"/>
<path fill="#dcfce7" stroke="black" d="M120.12,-318C120.12,-318 90.12,-318 90.12,-318 84.12,-318 78.12,-312 78.12,-306 78.12,-306 78.12,-294 78.12,-294 78.12,-288 84.12,-282 90.12,-282 90.12,-282 120.12,-282 120.12,-282 126.12,-282 132.12,-288 132.12,-294 132.12,-294 132.12,-306 132.12,-306 132.12,-312 126.12,-318 120.12,-318"/>
<text text-anchor="middle" x="105.12" y="-296.88" font-family="Helvetica,sans-Serif" font-size="10.00">gitea</text>
</g>
<!-- svc:gotify -->
<g id="node9" class="node">
<g id="node5" class="node">
<title>svc:gotify</title>
<path fill="#dff2e1" stroke="black" d="M222.5,-528C222.5,-528 192.5,-528 192.5,-528 186.5,-528 180.5,-522 180.5,-516 180.5,-516 180.5,-504 180.5,-504 180.5,-498 186.5,-492 192.5,-492 192.5,-492 222.5,-492 222.5,-492 228.5,-492 234.5,-498 234.5,-504 234.5,-504 234.5,-516 234.5,-516 234.5,-522 228.5,-528 222.5,-528"/>
<text text-anchor="middle" x="207.5" y="-507.5" font-family="Helvetica,sans-Serif" font-size="10.00">gotify</text>
</g>
<!-- host:docker&#45;&gt;svc:gotify -->
<g id="edge8" class="edge">
<title>host:docker&#45;&gt;svc:gotify</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M55,-967.92C55,-880.97 55,-510 55,-510 55,-510 170.24,-510 170.24,-510"/>
<polygon fill="#6b7280" stroke="#6b7280" points="170.24,-513.5 180.24,-510 170.24,-506.5 170.24,-513.5"/>
</g>
<!-- svc:grafana -->
<g id="node10" class="node">
<title>svc:grafana</title>
<path fill="#dff2e1" stroke="black" d="M222.5,-596C222.5,-596 192.5,-596 192.5,-596 186.5,-596 180.5,-590 180.5,-584 180.5,-584 180.5,-572 180.5,-572 180.5,-566 186.5,-560 192.5,-560 192.5,-560 222.5,-560 222.5,-560 228.5,-560 234.5,-566 234.5,-572 234.5,-572 234.5,-584 234.5,-584 234.5,-590 228.5,-596 222.5,-596"/>
<text text-anchor="middle" x="207.5" y="-575.5" font-family="Helvetica,sans-Serif" font-size="10.00">grafana</text>
</g>
<!-- host:docker&#45;&gt;svc:grafana -->
<g id="edge9" class="edge">
<title>host:docker&#45;&gt;svc:grafana</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M59,-967.94C59,-888.98 59,-578 59,-578 59,-578 170.26,-578 170.26,-578"/>
<polygon fill="#6b7280" stroke="#6b7280" points="170.26,-581.5 180.26,-578 170.26,-574.5 170.26,-581.5"/>
</g>
<!-- svc:gramps&#45;redis -->
<g id="node11" class="node">
<title>svc:gramps&#45;redis</title>
<path fill="#dff2e1" stroke="black" d="M236,-664C236,-664 179,-664 179,-664 173,-664 167,-658 167,-652 167,-652 167,-640 167,-640 167,-634 173,-628 179,-628 179,-628 236,-628 236,-628 242,-628 248,-634 248,-640 248,-640 248,-652 248,-652 248,-658 242,-664 236,-664"/>
<text text-anchor="middle" x="207.5" y="-643.5" font-family="Helvetica,sans-Serif" font-size="10.00">gramps&#45;redis</text>
</g>
<!-- host:docker&#45;&gt;svc:gramps&#45;redis -->
<g id="edge10" class="edge">
<title>host:docker&#45;&gt;svc:gramps&#45;redis</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M63,-967.72C63,-897.1 63,-646 63,-646 63,-646 156.86,-646 156.86,-646"/>
<polygon fill="#6b7280" stroke="#6b7280" points="156.86,-649.5 166.86,-646 156.86,-642.5 156.86,-649.5"/>
<path fill="#dcfce7" stroke="black" d="M120.12,-404C120.12,-404 90.12,-404 90.12,-404 84.12,-404 78.12,-398 78.12,-392 78.12,-392 78.12,-380 78.12,-380 78.12,-374 84.12,-368 90.12,-368 90.12,-368 120.12,-368 120.12,-368 126.12,-368 132.12,-374 132.12,-380 132.12,-380 132.12,-392 132.12,-392 132.12,-398 126.12,-404 120.12,-404"/>
<text text-anchor="middle" x="105.12" y="-382.88" font-family="Helvetica,sans-Serif" font-size="10.00">gotify</text>
</g>
<!-- svc:grampsweb -->
<g id="node12" class="node">
<g id="node6" class="node">
<title>svc:grampsweb</title>
<path fill="#dff2e1" stroke="black" d="M232.5,-732C232.5,-732 182.5,-732 182.5,-732 176.5,-732 170.5,-726 170.5,-720 170.5,-720 170.5,-708 170.5,-708 170.5,-702 176.5,-696 182.5,-696 182.5,-696 232.5,-696 232.5,-696 238.5,-696 244.5,-702 244.5,-708 244.5,-708 244.5,-720 244.5,-720 244.5,-726 238.5,-732 232.5,-732"/>
<text text-anchor="middle" x="207.5" y="-711.5" font-family="Helvetica,sans-Serif" font-size="10.00">grampsweb</text>
</g>
<!-- host:docker&#45;&gt;svc:grampsweb -->
<g id="edge11" class="edge">
<title>host:docker&#45;&gt;svc:grampsweb</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M67,-967.73C67,-906.75 67,-714 67,-714 67,-714 160.22,-714 160.22,-714"/>
<polygon fill="#6b7280" stroke="#6b7280" points="160.22,-717.5 170.22,-714 160.22,-710.5 160.22,-717.5"/>
<path fill="#dcfce7" stroke="black" d="M129.62,-490C129.62,-490 80.62,-490 80.62,-490 74.62,-490 68.62,-484 68.62,-478 68.62,-478 68.62,-466 68.62,-466 68.62,-460 74.62,-454 80.62,-454 80.62,-454 129.62,-454 129.62,-454 135.62,-454 141.62,-460 141.62,-466 141.62,-466 141.62,-478 141.62,-478 141.62,-484 135.62,-490 129.62,-490"/>
<text text-anchor="middle" x="105.12" y="-468.88" font-family="Helvetica,sans-Serif" font-size="10.00">grampsweb</text>
</g>
<!-- svc:grampsweb_celery -->
<g id="node13" class="node">
<g id="node7" class="node">
<title>svc:grampsweb_celery</title>
<path fill="#dff2e1" stroke="black" d="M250,-800C250,-800 165,-800 165,-800 159,-800 153,-794 153,-788 153,-788 153,-776 153,-776 153,-770 159,-764 165,-764 165,-764 250,-764 250,-764 256,-764 262,-770 262,-776 262,-776 262,-788 262,-788 262,-794 256,-800 250,-800"/>
<text text-anchor="middle" x="207.5" y="-779.5" font-family="Helvetica,sans-Serif" font-size="10.00">grampsweb_celery</text>
</g>
<!-- host:docker&#45;&gt;svc:grampsweb_celery -->
<g id="edge12" class="edge">
<title>host:docker&#45;&gt;svc:grampsweb_celery</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M79,-982.4C110.7,-982.4 159,-982.4 159,-982.4 159,-982.4 159,-810.14 159,-810.14"/>
<polygon fill="#6b7280" stroke="#6b7280" points="162.5,-810.14 159,-800.14 155.5,-810.14 162.5,-810.14"/>
</g>
<!-- svc:influxdb -->
<g id="node14" class="node">
<title>svc:influxdb</title>
<path fill="#dff2e1" stroke="black" d="M223.5,-868C223.5,-868 191.5,-868 191.5,-868 185.5,-868 179.5,-862 179.5,-856 179.5,-856 179.5,-844 179.5,-844 179.5,-838 185.5,-832 191.5,-832 191.5,-832 223.5,-832 223.5,-832 229.5,-832 235.5,-838 235.5,-844 235.5,-844 235.5,-856 235.5,-856 235.5,-862 229.5,-868 223.5,-868"/>
<text text-anchor="middle" x="207.5" y="-847.5" font-family="Helvetica,sans-Serif" font-size="10.00">influxdb</text>
</g>
<!-- host:docker&#45;&gt;svc:influxdb -->
<g id="edge13" class="edge">
<title>host:docker&#45;&gt;svc:influxdb</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M71,-967.94C71,-930.95 71,-850 71,-850 71,-850 169.22,-850 169.22,-850"/>
<polygon fill="#6b7280" stroke="#6b7280" points="169.22,-853.5 179.22,-850 169.22,-846.5 169.22,-853.5"/>
<path fill="#dcfce7" stroke="black" d="M147.25,-576C147.25,-576 63,-576 63,-576 57,-576 51,-570 51,-564 51,-564 51,-552 51,-552 51,-546 57,-540 63,-540 63,-540 147.25,-540 147.25,-540 153.25,-540 159.25,-546 159.25,-552 159.25,-552 159.25,-564 159.25,-564 159.25,-570 153.25,-576 147.25,-576"/>
<text text-anchor="middle" x="105.12" y="-554.88" font-family="Helvetica,sans-Serif" font-size="10.00">grampsweb_celery</text>
</g>
<!-- svc:monitor&#45;kuma -->
<g id="node15" class="node">
<g id="node8" class="node">
<title>svc:monitor&#45;kuma</title>
<path fill="#dff2e1" stroke="black" d="M238.5,-936C238.5,-936 176.5,-936 176.5,-936 170.5,-936 164.5,-930 164.5,-924 164.5,-924 164.5,-912 164.5,-912 164.5,-906 170.5,-900 176.5,-900 176.5,-900 238.5,-900 238.5,-900 244.5,-900 250.5,-906 250.5,-912 250.5,-912 250.5,-924 250.5,-924 250.5,-930 244.5,-936 238.5,-936"/>
<text text-anchor="middle" x="207.5" y="-915.5" font-family="Helvetica,sans-Serif" font-size="10.00">monitor&#45;kuma</text>
</g>
<!-- host:docker&#45;&gt;svc:monitor&#45;kuma -->
<g id="edge14" class="edge">
<title>host:docker&#45;&gt;svc:monitor&#45;kuma</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M75,-967.78C75,-947.63 75,-918 75,-918 75,-918 154.48,-918 154.48,-918"/>
<polygon fill="#6b7280" stroke="#6b7280" points="154.48,-921.5 164.48,-918 154.48,-914.5 154.48,-921.5"/>
<path fill="#dcfce7" stroke="black" d="M135.62,-662C135.62,-662 74.62,-662 74.62,-662 68.62,-662 62.62,-656 62.62,-650 62.62,-650 62.62,-638 62.62,-638 62.62,-632 68.62,-626 74.62,-626 74.62,-626 135.62,-626 135.62,-626 141.62,-626 147.62,-632 147.62,-638 147.62,-638 147.62,-650 147.62,-650 147.62,-656 141.62,-662 135.62,-662"/>
<text text-anchor="middle" x="105.12" y="-640.88" font-family="Helvetica,sans-Serif" font-size="10.00">monitor&#45;kuma</text>
</g>
<!-- svc:mtls&#45;bridge -->
<g id="node16" class="node">
<g id="node9" class="node">
<title>svc:mtls&#45;bridge</title>
<path fill="#dff2e1" stroke="black" d="M232,-1004C232,-1004 183,-1004 183,-1004 177,-1004 171,-998 171,-992 171,-992 171,-980 171,-980 171,-974 177,-968 183,-968 183,-968 232,-968 232,-968 238,-968 244,-974 244,-980 244,-980 244,-992 244,-992 244,-998 238,-1004 232,-1004"/>
<text text-anchor="middle" x="207.5" y="-983.5" font-family="Helvetica,sans-Serif" font-size="10.00">mtls&#45;bridge</text>
</g>
<!-- host:docker&#45;&gt;svc:mtls&#45;bridge -->
<g id="edge15" class="edge">
<title>host:docker&#45;&gt;svc:mtls&#45;bridge</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M79.09,-989.6C79.09,-989.6 160.82,-989.6 160.82,-989.6"/>
<polygon fill="#6b7280" stroke="#6b7280" points="160.82,-993.1 170.82,-989.6 160.82,-986.1 160.82,-993.1"/>
</g>
<!-- svc:nextcloud&#45;db -->
<g id="node17" class="node">
<title>svc:nextcloud&#45;db</title>
<path fill="#dff2e1" stroke="black" d="M235.5,-1072C235.5,-1072 179.5,-1072 179.5,-1072 173.5,-1072 167.5,-1066 167.5,-1060 167.5,-1060 167.5,-1048 167.5,-1048 167.5,-1042 173.5,-1036 179.5,-1036 179.5,-1036 235.5,-1036 235.5,-1036 241.5,-1036 247.5,-1042 247.5,-1048 247.5,-1048 247.5,-1060 247.5,-1060 247.5,-1066 241.5,-1072 235.5,-1072"/>
<text text-anchor="middle" x="207.5" y="-1051.5" font-family="Helvetica,sans-Serif" font-size="10.00">nextcloud&#45;db</text>
</g>
<!-- host:docker&#45;&gt;svc:nextcloud&#45;db -->
<g id="edge16" class="edge">
<title>host:docker&#45;&gt;svc:nextcloud&#45;db</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M76,-1004.22C76,-1024.37 76,-1054 76,-1054 76,-1054 157.33,-1054 157.33,-1054"/>
<polygon fill="#6b7280" stroke="#6b7280" points="157.33,-1057.5 167.33,-1054 157.33,-1050.5 157.33,-1057.5"/>
</g>
<!-- svc:nextcloud&#45;redis -->
<g id="node18" class="node">
<title>svc:nextcloud&#45;redis</title>
<path fill="#dff2e1" stroke="black" d="M241.5,-1140C241.5,-1140 173.5,-1140 173.5,-1140 167.5,-1140 161.5,-1134 161.5,-1128 161.5,-1128 161.5,-1116 161.5,-1116 161.5,-1110 167.5,-1104 173.5,-1104 173.5,-1104 241.5,-1104 241.5,-1104 247.5,-1104 253.5,-1110 253.5,-1116 253.5,-1116 253.5,-1128 253.5,-1128 253.5,-1134 247.5,-1140 241.5,-1140"/>
<text text-anchor="middle" x="207.5" y="-1119.5" font-family="Helvetica,sans-Serif" font-size="10.00">nextcloud&#45;redis</text>
</g>
<!-- host:docker&#45;&gt;svc:nextcloud&#45;redis -->
<g id="edge17" class="edge">
<title>host:docker&#45;&gt;svc:nextcloud&#45;redis</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M72,-1004.06C72,-1041.05 72,-1122 72,-1122 72,-1122 151.25,-1122 151.25,-1122"/>
<polygon fill="#6b7280" stroke="#6b7280" points="151.25,-1125.5 161.25,-1122 151.25,-1118.5 151.25,-1125.5"/>
<path fill="#dcfce7" stroke="black" d="M129.25,-748C129.25,-748 81,-748 81,-748 75,-748 69,-742 69,-736 69,-736 69,-724 69,-724 69,-718 75,-712 81,-712 81,-712 129.25,-712 129.25,-712 135.25,-712 141.25,-718 141.25,-724 141.25,-724 141.25,-736 141.25,-736 141.25,-742 135.25,-748 129.25,-748"/>
<text text-anchor="middle" x="105.12" y="-726.88" font-family="Helvetica,sans-Serif" font-size="10.00">mtls&#45;bridge</text>
</g>
<!-- svc:nextcloud&#45;webapp -->
<g id="node19" class="node">
<g id="node10" class="node">
<title>svc:nextcloud&#45;webapp</title>
<path fill="#dff2e1" stroke="black" d="M249,-1208C249,-1208 166,-1208 166,-1208 160,-1208 154,-1202 154,-1196 154,-1196 154,-1184 154,-1184 154,-1178 160,-1172 166,-1172 166,-1172 249,-1172 249,-1172 255,-1172 261,-1178 261,-1184 261,-1184 261,-1196 261,-1196 261,-1202 255,-1208 249,-1208"/>
<text text-anchor="middle" x="207.5" y="-1187.5" font-family="Helvetica,sans-Serif" font-size="10.00">nextcloud&#45;webapp</text>
</g>
<!-- host:docker&#45;&gt;svc:nextcloud&#45;webapp -->
<g id="edge18" class="edge">
<title>host:docker&#45;&gt;svc:nextcloud&#45;webapp</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M79.04,-996.8C110.15,-996.8 157,-996.8 157,-996.8 157,-996.8 157,-1161.82 157,-1161.82"/>
<polygon fill="#6b7280" stroke="#6b7280" points="153.5,-1161.82 157,-1171.82 160.5,-1161.82 153.5,-1161.82"/>
</g>
<!-- svc:node&#45;exporter -->
<g id="node20" class="node">
<title>svc:node&#45;exporter</title>
<path fill="#dff2e1" stroke="black" d="M238.5,-1276C238.5,-1276 176.5,-1276 176.5,-1276 170.5,-1276 164.5,-1270 164.5,-1264 164.5,-1264 164.5,-1252 164.5,-1252 164.5,-1246 170.5,-1240 176.5,-1240 176.5,-1240 238.5,-1240 238.5,-1240 244.5,-1240 250.5,-1246 250.5,-1252 250.5,-1252 250.5,-1264 250.5,-1264 250.5,-1270 244.5,-1276 238.5,-1276"/>
<text text-anchor="middle" x="207.5" y="-1255.5" font-family="Helvetica,sans-Serif" font-size="10.00">node&#45;exporter</text>
</g>
<!-- host:docker&#45;&gt;svc:node&#45;exporter -->
<g id="edge19" class="edge">
<title>host:docker&#45;&gt;svc:node&#45;exporter</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M68,-1004.27C68,-1065.25 68,-1258 68,-1258 68,-1258 154.13,-1258 154.13,-1258"/>
<polygon fill="#6b7280" stroke="#6b7280" points="154.13,-1261.5 164.13,-1258 154.13,-1254.5 154.13,-1261.5"/>
<path fill="#dcfce7" stroke="black" d="M146.12,-834C146.12,-834 64.12,-834 64.12,-834 58.12,-834 52.12,-828 52.12,-822 52.12,-822 52.12,-810 52.12,-810 52.12,-804 58.12,-798 64.12,-798 64.12,-798 146.12,-798 146.12,-798 152.12,-798 158.12,-804 158.12,-810 158.12,-810 158.12,-822 158.12,-822 158.12,-828 152.12,-834 146.12,-834"/>
<text text-anchor="middle" x="105.12" y="-812.88" font-family="Helvetica,sans-Serif" font-size="10.00">nextcloud&#45;webapp</text>
</g>
<!-- svc:node&#45;red -->
<g id="node21" class="node">
<g id="node11" class="node">
<title>svc:node&#45;red</title>
<path fill="#dff2e1" stroke="black" d="M225.5,-1344C225.5,-1344 189.5,-1344 189.5,-1344 183.5,-1344 177.5,-1338 177.5,-1332 177.5,-1332 177.5,-1320 177.5,-1320 177.5,-1314 183.5,-1308 189.5,-1308 189.5,-1308 225.5,-1308 225.5,-1308 231.5,-1308 237.5,-1314 237.5,-1320 237.5,-1320 237.5,-1332 237.5,-1332 237.5,-1338 231.5,-1344 225.5,-1344"/>
<text text-anchor="middle" x="207.5" y="-1323.5" font-family="Helvetica,sans-Serif" font-size="10.00">node&#45;red</text>
</g>
<!-- host:docker&#45;&gt;svc:node&#45;red -->
<g id="edge20" class="edge">
<title>host:docker&#45;&gt;svc:node&#45;red</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M64,-1004.28C64,-1074.9 64,-1326 64,-1326 64,-1326 167.42,-1326 167.42,-1326"/>
<polygon fill="#6b7280" stroke="#6b7280" points="167.42,-1329.5 177.42,-1326 167.42,-1322.5 167.42,-1329.5"/>
</g>
<!-- svc:passbolt&#45;db -->
<g id="node22" class="node">
<title>svc:passbolt&#45;db</title>
<path fill="#dff2e1" stroke="black" d="M232.5,-1412C232.5,-1412 182.5,-1412 182.5,-1412 176.5,-1412 170.5,-1406 170.5,-1400 170.5,-1400 170.5,-1388 170.5,-1388 170.5,-1382 176.5,-1376 182.5,-1376 182.5,-1376 232.5,-1376 232.5,-1376 238.5,-1376 244.5,-1382 244.5,-1388 244.5,-1388 244.5,-1400 244.5,-1400 244.5,-1406 238.5,-1412 232.5,-1412"/>
<text text-anchor="middle" x="207.5" y="-1391.5" font-family="Helvetica,sans-Serif" font-size="10.00">passbolt&#45;db</text>
</g>
<!-- host:docker&#45;&gt;svc:passbolt&#45;db -->
<g id="edge21" class="edge">
<title>host:docker&#45;&gt;svc:passbolt&#45;db</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M60,-1004.06C60,-1083.02 60,-1394 60,-1394 60,-1394 160.28,-1394 160.28,-1394"/>
<polygon fill="#6b7280" stroke="#6b7280" points="160.28,-1397.5 170.28,-1394 160.28,-1390.5 160.28,-1397.5"/>
<path fill="#dcfce7" stroke="black" d="M122.88,-920C122.88,-920 87.38,-920 87.38,-920 81.38,-920 75.38,-914 75.38,-908 75.38,-908 75.38,-896 75.38,-896 75.38,-890 81.38,-884 87.38,-884 87.38,-884 122.88,-884 122.88,-884 128.88,-884 134.88,-890 134.88,-896 134.88,-896 134.88,-908 134.88,-908 134.88,-914 128.88,-920 122.88,-920"/>
<text text-anchor="middle" x="105.12" y="-898.88" font-family="Helvetica,sans-Serif" font-size="10.00">node&#45;red</text>
</g>
<!-- svc:passbolt&#45;webapp -->
<g id="node23" class="node">
<g id="node12" class="node">
<title>svc:passbolt&#45;webapp</title>
<path fill="#dff2e1" stroke="black" d="M245.5,-1480C245.5,-1480 169.5,-1480 169.5,-1480 163.5,-1480 157.5,-1474 157.5,-1468 157.5,-1468 157.5,-1456 157.5,-1456 157.5,-1450 163.5,-1444 169.5,-1444 169.5,-1444 245.5,-1444 245.5,-1444 251.5,-1444 257.5,-1450 257.5,-1456 257.5,-1456 257.5,-1468 257.5,-1468 257.5,-1474 251.5,-1480 245.5,-1480"/>
<text text-anchor="middle" x="207.5" y="-1459.5" font-family="Helvetica,sans-Serif" font-size="10.00">passbolt&#45;webapp</text>
</g>
<!-- host:docker&#45;&gt;svc:passbolt&#45;webapp -->
<g id="edge22" class="edge">
<title>host:docker&#45;&gt;svc:passbolt&#45;webapp</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M56,-1004.08C56,-1091.03 56,-1462 56,-1462 56,-1462 147.47,-1462 147.47,-1462"/>
<polygon fill="#6b7280" stroke="#6b7280" points="147.47,-1465.5 157.47,-1462 147.47,-1458.5 147.47,-1465.5"/>
<path fill="#dcfce7" stroke="black" d="M142.75,-1006C142.75,-1006 67.5,-1006 67.5,-1006 61.5,-1006 55.5,-1000 55.5,-994 55.5,-994 55.5,-982 55.5,-982 55.5,-976 61.5,-970 67.5,-970 67.5,-970 142.75,-970 142.75,-970 148.75,-970 154.75,-976 154.75,-982 154.75,-982 154.75,-994 154.75,-994 154.75,-1000 148.75,-1006 142.75,-1006"/>
<text text-anchor="middle" x="105.12" y="-984.88" font-family="Helvetica,sans-Serif" font-size="10.00">passbolt&#45;webapp</text>
</g>
<!-- svc:portainer -->
<g id="node24" class="node">
<g id="node13" class="node">
<title>svc:portainer</title>
<path fill="#dff2e1" stroke="black" d="M226,-1548C226,-1548 189,-1548 189,-1548 183,-1548 177,-1542 177,-1536 177,-1536 177,-1524 177,-1524 177,-1518 183,-1512 189,-1512 189,-1512 226,-1512 226,-1512 232,-1512 238,-1518 238,-1524 238,-1524 238,-1536 238,-1536 238,-1542 232,-1548 226,-1548"/>
<text text-anchor="middle" x="207.5" y="-1527.5" font-family="Helvetica,sans-Serif" font-size="10.00">portainer</text>
</g>
<!-- host:docker&#45;&gt;svc:portainer -->
<g id="edge23" class="edge">
<title>host:docker&#45;&gt;svc:portainer</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M52,-1004.1C52,-1098.49 52,-1530 52,-1530 52,-1530 166.78,-1530 166.78,-1530"/>
<polygon fill="#6b7280" stroke="#6b7280" points="166.78,-1533.5 176.78,-1530 166.78,-1526.5 166.78,-1533.5"/>
</g>
<!-- svc:prometheus -->
<g id="node25" class="node">
<title>svc:prometheus</title>
<path fill="#dff2e1" stroke="black" d="M233,-1616C233,-1616 182,-1616 182,-1616 176,-1616 170,-1610 170,-1604 170,-1604 170,-1592 170,-1592 170,-1586 176,-1580 182,-1580 182,-1580 233,-1580 233,-1580 239,-1580 245,-1586 245,-1592 245,-1592 245,-1604 245,-1604 245,-1610 239,-1616 233,-1616"/>
<text text-anchor="middle" x="207.5" y="-1595.5" font-family="Helvetica,sans-Serif" font-size="10.00">prometheus</text>
</g>
<!-- host:docker&#45;&gt;svc:prometheus -->
<g id="edge24" class="edge">
<title>host:docker&#45;&gt;svc:prometheus</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M49,-1004.32C49,-1106.15 49,-1598 49,-1598 49,-1598 159.94,-1598 159.94,-1598"/>
<polygon fill="#6b7280" stroke="#6b7280" points="159.94,-1601.5 169.94,-1598 159.94,-1594.5 159.94,-1601.5"/>
<path fill="#dcfce7" stroke="black" d="M123.25,-1092C123.25,-1092 87,-1092 87,-1092 81,-1092 75,-1086 75,-1080 75,-1080 75,-1068 75,-1068 75,-1062 81,-1056 87,-1056 87,-1056 123.25,-1056 123.25,-1056 129.25,-1056 135.25,-1062 135.25,-1068 135.25,-1068 135.25,-1080 135.25,-1080 135.25,-1086 129.25,-1092 123.25,-1092"/>
<text text-anchor="middle" x="105.12" y="-1070.88" font-family="Helvetica,sans-Serif" font-size="10.00">portainer</text>
</g>
<!-- svc:searxng&#45;webapp -->
<g id="node26" class="node">
<g id="node14" class="node">
<title>svc:searxng&#45;webapp</title>
<path fill="#dff2e1" stroke="black" d="M244.5,-1684C244.5,-1684 170.5,-1684 170.5,-1684 164.5,-1684 158.5,-1678 158.5,-1672 158.5,-1672 158.5,-1660 158.5,-1660 158.5,-1654 164.5,-1648 170.5,-1648 170.5,-1648 244.5,-1648 244.5,-1648 250.5,-1648 256.5,-1654 256.5,-1660 256.5,-1660 256.5,-1672 256.5,-1672 256.5,-1678 250.5,-1684 244.5,-1684"/>
<text text-anchor="middle" x="207.5" y="-1663.5" font-family="Helvetica,sans-Serif" font-size="10.00">searxng&#45;webapp</text>
</g>
<!-- host:docker&#45;&gt;svc:searxng&#45;webapp -->
<g id="edge25" class="edge">
<title>host:docker&#45;&gt;svc:searxng&#45;webapp</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M45,-1004.19C45,-1112.33 45,-1666 45,-1666 45,-1666 148.3,-1666 148.3,-1666"/>
<polygon fill="#6b7280" stroke="#6b7280" points="148.3,-1669.5 158.3,-1666 148.3,-1662.5 148.3,-1669.5"/>
<path fill="#dcfce7" stroke="black" d="M141.62,-1178C141.62,-1178 68.62,-1178 68.62,-1178 62.62,-1178 56.62,-1172 56.62,-1166 56.62,-1166 56.62,-1154 56.62,-1154 56.62,-1148 62.62,-1142 68.62,-1142 68.62,-1142 141.62,-1142 141.62,-1142 147.62,-1142 153.62,-1148 153.62,-1154 153.62,-1154 153.62,-1166 153.62,-1166 153.62,-1172 147.62,-1178 141.62,-1178"/>
<text text-anchor="middle" x="105.12" y="-1156.88" font-family="Helvetica,sans-Serif" font-size="10.00">searxng&#45;webapp</text>
</g>
<!-- svc:shift&#45;recorder&#45;web -->
<g id="node27" class="node">
<g id="node15" class="node">
<title>svc:shift&#45;recorder&#45;web</title>
<path fill="#dff2e1" stroke="black" d="M248.5,-1752C248.5,-1752 166.5,-1752 166.5,-1752 160.5,-1752 154.5,-1746 154.5,-1740 154.5,-1740 154.5,-1728 154.5,-1728 154.5,-1722 160.5,-1716 166.5,-1716 166.5,-1716 248.5,-1716 248.5,-1716 254.5,-1716 260.5,-1722 260.5,-1728 260.5,-1728 260.5,-1740 260.5,-1740 260.5,-1746 254.5,-1752 248.5,-1752"/>
<text text-anchor="middle" x="207.5" y="-1731.5" font-family="Helvetica,sans-Serif" font-size="10.00">shift&#45;recorder&#45;web</text>
</g>
<!-- host:docker&#45;&gt;svc:shift&#45;recorder&#45;web -->
<g id="edge26" class="edge">
<title>host:docker&#45;&gt;svc:shift&#45;recorder&#45;web</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M41,-1004.12C41,-1118.35 41,-1734 41,-1734 41,-1734 144.36,-1734 144.36,-1734"/>
<polygon fill="#6b7280" stroke="#6b7280" points="144.36,-1737.5 154.36,-1734 144.36,-1730.5 144.36,-1737.5"/>
<path fill="#dcfce7" stroke="black" d="M145.75,-1264C145.75,-1264 64.5,-1264 64.5,-1264 58.5,-1264 52.5,-1258 52.5,-1252 52.5,-1252 52.5,-1240 52.5,-1240 52.5,-1234 58.5,-1228 64.5,-1228 64.5,-1228 145.75,-1228 145.75,-1228 151.75,-1228 157.75,-1234 157.75,-1240 157.75,-1240 157.75,-1252 157.75,-1252 157.75,-1258 151.75,-1264 145.75,-1264"/>
<text text-anchor="middle" x="105.12" y="-1242.88" font-family="Helvetica,sans-Serif" font-size="10.00">shift&#45;recorder&#45;web</text>
</g>
<!-- svc:stockfill -->
<g id="node28" class="node">
<g id="node16" class="node">
<title>svc:stockfill</title>
<path fill="#dff2e1" stroke="black" d="M223,-1820C223,-1820 192,-1820 192,-1820 186,-1820 180,-1814 180,-1808 180,-1808 180,-1796 180,-1796 180,-1790 186,-1784 192,-1784 192,-1784 223,-1784 223,-1784 229,-1784 235,-1790 235,-1796 235,-1796 235,-1808 235,-1808 235,-1814 229,-1820 223,-1820"/>
<text text-anchor="middle" x="207.5" y="-1799.5" font-family="Helvetica,sans-Serif" font-size="10.00">stockfill</text>
</g>
<!-- host:docker&#45;&gt;svc:stockfill -->
<g id="edge27" class="edge">
<title>host:docker&#45;&gt;svc:stockfill</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M37,-1004.19C37,-1124.59 37,-1802 37,-1802 37,-1802 169.73,-1802 169.73,-1802"/>
<polygon fill="#6b7280" stroke="#6b7280" points="169.73,-1805.5 179.73,-1802 169.73,-1798.5 169.73,-1805.5"/>
<path fill="#dcfce7" stroke="black" d="M120.25,-1350C120.25,-1350 90,-1350 90,-1350 84,-1350 78,-1344 78,-1338 78,-1338 78,-1326 78,-1326 78,-1320 84,-1314 90,-1314 90,-1314 120.25,-1314 120.25,-1314 126.25,-1314 132.25,-1320 132.25,-1326 132.25,-1326 132.25,-1338 132.25,-1338 132.25,-1344 126.25,-1350 120.25,-1350"/>
<text text-anchor="middle" x="105.12" y="-1328.88" font-family="Helvetica,sans-Serif" font-size="10.00">stockfill</text>
</g>
<!-- svc:telegraf -->
<g id="node29" class="node">
<g id="node17" class="node">
<title>svc:telegraf</title>
<path fill="#dff2e1" stroke="black" d="M223,-1888C223,-1888 192,-1888 192,-1888 186,-1888 180,-1882 180,-1876 180,-1876 180,-1864 180,-1864 180,-1858 186,-1852 192,-1852 192,-1852 223,-1852 223,-1852 229,-1852 235,-1858 235,-1864 235,-1864 235,-1876 235,-1876 235,-1882 229,-1888 223,-1888"/>
<text text-anchor="middle" x="207.5" y="-1867.5" font-family="Helvetica,sans-Serif" font-size="10.00">telegraf</text>
<path fill="#dcfce7" stroke="black" d="M120.25,-1436C120.25,-1436 90,-1436 90,-1436 84,-1436 78,-1430 78,-1424 78,-1424 78,-1412 78,-1412 78,-1406 84,-1400 90,-1400 90,-1400 120.25,-1400 120.25,-1400 126.25,-1400 132.25,-1406 132.25,-1412 132.25,-1412 132.25,-1424 132.25,-1424 132.25,-1430 126.25,-1436 120.25,-1436"/>
<text text-anchor="middle" x="105.12" y="-1414.88" font-family="Helvetica,sans-Serif" font-size="10.00">telegraf</text>
</g>
<!-- host:docker&#45;&gt;svc:telegraf -->
<g id="edge28" class="edge">
<title>host:docker&#45;&gt;svc:telegraf</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M33,-1004.06C33,-1129.83 33,-1870 33,-1870 33,-1870 169.85,-1870 169.85,-1870"/>
<polygon fill="#6b7280" stroke="#6b7280" points="169.85,-1873.5 179.85,-1870 169.85,-1866.5 169.85,-1873.5"/>
<!-- svc:gitea&#45;runner -->
<g id="node18" class="node">
<title>svc:gitea&#45;runner</title>
<path fill="#dcfce7" stroke="black" d="M131.12,-1522C131.12,-1522 79.12,-1522 79.12,-1522 73.12,-1522 67.12,-1516 67.12,-1510 67.12,-1510 67.12,-1498 67.12,-1498 67.12,-1492 73.12,-1486 79.12,-1486 79.12,-1486 131.12,-1486 131.12,-1486 137.12,-1486 143.12,-1492 143.12,-1498 143.12,-1498 143.12,-1510 143.12,-1510 143.12,-1516 137.12,-1522 131.12,-1522"/>
<text text-anchor="middle" x="105.12" y="-1500.88" font-family="Helvetica,sans-Serif" font-size="10.00">gitea&#45;runner</text>
</g>
<!-- svc:authelia -->
<g id="node19" class="node">
<title>svc:authelia</title>
<path fill="#dcfce7" stroke="black" d="M121,-1608C121,-1608 89.25,-1608 89.25,-1608 83.25,-1608 77.25,-1602 77.25,-1596 77.25,-1596 77.25,-1584 77.25,-1584 77.25,-1578 83.25,-1572 89.25,-1572 89.25,-1572 121,-1572 121,-1572 127,-1572 133,-1578 133,-1584 133,-1584 133,-1596 133,-1596 133,-1602 127,-1608 121,-1608"/>
<text text-anchor="middle" x="105.12" y="-1586.88" font-family="Helvetica,sans-Serif" font-size="10.00">authelia</text>
</g>
<!-- svc:docker&#45;socket&#45;proxy -->
<g id="node20" class="node">
<title>svc:docker&#45;socket&#45;proxy</title>
<path fill="#dcfce7" stroke="black" d="M150.62,-1694C150.62,-1694 59.62,-1694 59.62,-1694 53.62,-1694 47.62,-1688 47.62,-1682 47.62,-1682 47.62,-1670 47.62,-1670 47.62,-1664 53.62,-1658 59.62,-1658 59.62,-1658 150.62,-1658 150.62,-1658 156.62,-1658 162.62,-1664 162.62,-1670 162.62,-1670 162.62,-1682 162.62,-1682 162.62,-1688 156.62,-1694 150.62,-1694"/>
<text text-anchor="middle" x="105.12" y="-1672.88" font-family="Helvetica,sans-Serif" font-size="10.00">docker&#45;socket&#45;proxy</text>
</g>
<!-- svc:traefik -->
<g id="node30" class="node">
<g id="node21" class="node">
<title>svc:traefik</title>
<path fill="#dff2e1" stroke="black" d="M222.5,-1956C222.5,-1956 192.5,-1956 192.5,-1956 186.5,-1956 180.5,-1950 180.5,-1944 180.5,-1944 180.5,-1932 180.5,-1932 180.5,-1926 186.5,-1920 192.5,-1920 192.5,-1920 222.5,-1920 222.5,-1920 228.5,-1920 234.5,-1926 234.5,-1932 234.5,-1932 234.5,-1944 234.5,-1944 234.5,-1950 228.5,-1956 222.5,-1956"/>
<text text-anchor="middle" x="207.5" y="-1935.5" font-family="Helvetica,sans-Serif" font-size="10.00">traefik</text>
<path fill="#dcfce7" stroke="black" d="M120.12,-1780C120.12,-1780 90.12,-1780 90.12,-1780 84.12,-1780 78.12,-1774 78.12,-1768 78.12,-1768 78.12,-1756 78.12,-1756 78.12,-1750 84.12,-1744 90.12,-1744 90.12,-1744 120.12,-1744 120.12,-1744 126.12,-1744 132.12,-1750 132.12,-1756 132.12,-1756 132.12,-1768 132.12,-1768 132.12,-1774 126.12,-1780 120.12,-1780"/>
<text text-anchor="middle" x="105.12" y="-1758.88" font-family="Helvetica,sans-Serif" font-size="10.00">traefik</text>
</g>
<!-- host:docker&#45;&gt;svc:traefik -->
<g id="edge29" class="edge">
<title>host:docker&#45;&gt;svc:traefik</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M29,-1004.17C29,-1135.78 29,-1938 29,-1938 29,-1938 170.39,-1938 170.39,-1938"/>
<polygon fill="#6b7280" stroke="#6b7280" points="170.39,-1941.5 180.39,-1938 170.39,-1934.5 170.39,-1941.5"/>
<!-- svc:grafana -->
<g id="node22" class="node">
<title>svc:grafana</title>
<path fill="#dcfce7" stroke="black" d="M120.12,-1866C120.12,-1866 90.12,-1866 90.12,-1866 84.12,-1866 78.12,-1860 78.12,-1854 78.12,-1854 78.12,-1842 78.12,-1842 78.12,-1836 84.12,-1830 90.12,-1830 90.12,-1830 120.12,-1830 120.12,-1830 126.12,-1830 132.12,-1836 132.12,-1842 132.12,-1842 132.12,-1854 132.12,-1854 132.12,-1860 126.12,-1866 120.12,-1866"/>
<text text-anchor="middle" x="105.12" y="-1844.88" font-family="Helvetica,sans-Serif" font-size="10.00">grafana</text>
</g>
<!-- host:raspberrypi -->
<g id="node31" class="node">
<title>host:raspberrypi</title>
<polygon fill="#d4e3ff" stroke="black" points="88,-2039 20,-2039 16,-2035 16,-2003 84,-2003 88,-2007 88,-2039"/>
<polyline fill="none" stroke="black" points="84,-2035 16,-2035 "/>
<polyline fill="none" stroke="black" points="84,-2035 84,-2003 "/>
<polyline fill="none" stroke="black" points="84,-2035 88,-2039 "/>
<text text-anchor="middle" x="52" y="-2018.5" font-family="Helvetica,sans-Serif" font-size="10.00">raspberrypi</text>
<!-- svc:node&#45;exporter -->
<g id="node23" class="node">
<title>svc:node&#45;exporter</title>
<path fill="#dcfce7" stroke="black" d="M135.62,-1952C135.62,-1952 74.62,-1952 74.62,-1952 68.62,-1952 62.62,-1946 62.62,-1940 62.62,-1940 62.62,-1928 62.62,-1928 62.62,-1922 68.62,-1916 74.62,-1916 74.62,-1916 135.62,-1916 135.62,-1916 141.62,-1916 147.62,-1922 147.62,-1928 147.62,-1928 147.62,-1940 147.62,-1940 147.62,-1946 141.62,-1952 135.62,-1952"/>
<text text-anchor="middle" x="105.12" y="-1930.88" font-family="Helvetica,sans-Serif" font-size="10.00">node&#45;exporter</text>
</g>
<!-- svc:prometheus -->
<g id="node24" class="node">
<title>svc:prometheus</title>
<path fill="#dcfce7" stroke="black" d="M130.38,-2038C130.38,-2038 79.88,-2038 79.88,-2038 73.88,-2038 67.88,-2032 67.88,-2026 67.88,-2026 67.88,-2014 67.88,-2014 67.88,-2008 73.88,-2002 79.88,-2002 79.88,-2002 130.38,-2002 130.38,-2002 136.38,-2002 142.38,-2008 142.38,-2014 142.38,-2014 142.38,-2026 142.38,-2026 142.38,-2032 136.38,-2038 130.38,-2038"/>
<text text-anchor="middle" x="105.12" y="-2016.88" font-family="Helvetica,sans-Serif" font-size="10.00">prometheus</text>
</g>
<!-- svc:gramps&#45;redis -->
<g id="node25" class="node">
<title>svc:gramps&#45;redis</title>
<path fill="#dcfce7" stroke="black" d="M133.38,-2124C133.38,-2124 76.88,-2124 76.88,-2124 70.88,-2124 64.88,-2118 64.88,-2112 64.88,-2112 64.88,-2100 64.88,-2100 64.88,-2094 70.88,-2088 76.88,-2088 76.88,-2088 133.38,-2088 133.38,-2088 139.38,-2088 145.38,-2094 145.38,-2100 145.38,-2100 145.38,-2112 145.38,-2112 145.38,-2118 139.38,-2124 133.38,-2124"/>
<text text-anchor="middle" x="105.12" y="-2102.88" font-family="Helvetica,sans-Serif" font-size="10.00">gramps&#45;redis</text>
</g>
<!-- svc:influxdb -->
<g id="node26" class="node">
<title>svc:influxdb</title>
<path fill="#dcfce7" stroke="black" d="M120.62,-2210C120.62,-2210 89.62,-2210 89.62,-2210 83.62,-2210 77.62,-2204 77.62,-2198 77.62,-2198 77.62,-2186 77.62,-2186 77.62,-2180 83.62,-2174 89.62,-2174 89.62,-2174 120.62,-2174 120.62,-2174 126.62,-2174 132.62,-2180 132.62,-2186 132.62,-2186 132.62,-2198 132.62,-2198 132.62,-2204 126.62,-2210 120.62,-2210"/>
<text text-anchor="middle" x="105.12" y="-2188.88" font-family="Helvetica,sans-Serif" font-size="10.00">influxdb</text>
</g>
<!-- svc:nextcloud&#45;db -->
<g id="node27" class="node">
<title>svc:nextcloud&#45;db</title>
<path fill="#dcfce7" stroke="black" d="M133,-2296C133,-2296 77.25,-2296 77.25,-2296 71.25,-2296 65.25,-2290 65.25,-2284 65.25,-2284 65.25,-2272 65.25,-2272 65.25,-2266 71.25,-2260 77.25,-2260 77.25,-2260 133,-2260 133,-2260 139,-2260 145,-2266 145,-2272 145,-2272 145,-2284 145,-2284 145,-2290 139,-2296 133,-2296"/>
<text text-anchor="middle" x="105.12" y="-2274.88" font-family="Helvetica,sans-Serif" font-size="10.00">nextcloud&#45;db</text>
</g>
<!-- svc:nextcloud&#45;redis -->
<g id="node28" class="node">
<title>svc:nextcloud&#45;redis</title>
<path fill="#dcfce7" stroke="black" d="M139,-2382C139,-2382 71.25,-2382 71.25,-2382 65.25,-2382 59.25,-2376 59.25,-2370 59.25,-2370 59.25,-2358 59.25,-2358 59.25,-2352 65.25,-2346 71.25,-2346 71.25,-2346 139,-2346 139,-2346 145,-2346 151,-2352 151,-2358 151,-2358 151,-2370 151,-2370 151,-2376 145,-2382 139,-2382"/>
<text text-anchor="middle" x="105.12" y="-2360.88" font-family="Helvetica,sans-Serif" font-size="10.00">nextcloud&#45;redis</text>
</g>
<!-- svc:passbolt&#45;db -->
<g id="node29" class="node">
<title>svc:passbolt&#45;db</title>
<path fill="#dcfce7" stroke="black" d="M129.62,-2468C129.62,-2468 80.62,-2468 80.62,-2468 74.62,-2468 68.62,-2462 68.62,-2456 68.62,-2456 68.62,-2444 68.62,-2444 68.62,-2438 74.62,-2432 80.62,-2432 80.62,-2432 129.62,-2432 129.62,-2432 135.62,-2432 141.62,-2438 141.62,-2444 141.62,-2444 141.62,-2456 141.62,-2456 141.62,-2462 135.62,-2468 129.62,-2468"/>
<text text-anchor="middle" x="105.12" y="-2446.88" font-family="Helvetica,sans-Serif" font-size="10.00">passbolt&#45;db</text>
</g>
<!-- svc:pihole&#45;exporter -->
<g id="node32" class="node">
<g id="node30" class="node">
<title>svc:pihole&#45;exporter</title>
<path fill="#dff2e1" stroke="black" d="M241.5,-2039C241.5,-2039 173.5,-2039 173.5,-2039 167.5,-2039 161.5,-2033 161.5,-2027 161.5,-2027 161.5,-2015 161.5,-2015 161.5,-2009 167.5,-2003 173.5,-2003 173.5,-2003 241.5,-2003 241.5,-2003 247.5,-2003 253.5,-2009 253.5,-2015 253.5,-2015 253.5,-2027 253.5,-2027 253.5,-2033 247.5,-2039 241.5,-2039"/>
<text text-anchor="middle" x="207.5" y="-2018.5" font-family="Helvetica,sans-Serif" font-size="10.00">pihole&#45;exporter</text>
<path fill="#dcfce7" stroke="black" d="M138.62,-2594C138.62,-2594 71.62,-2594 71.62,-2594 65.62,-2594 59.62,-2588 59.62,-2582 59.62,-2582 59.62,-2570 59.62,-2570 59.62,-2564 65.62,-2558 71.62,-2558 71.62,-2558 138.62,-2558 138.62,-2558 144.62,-2558 150.62,-2564 150.62,-2570 150.62,-2570 150.62,-2582 150.62,-2582 150.62,-2588 144.62,-2594 138.62,-2594"/>
<text text-anchor="middle" x="105.12" y="-2572.88" font-family="Helvetica,sans-Serif" font-size="10.00">pihole&#45;exporter</text>
</g>
<!-- host:raspberrypi&#45;&gt;svc:pihole&#45;exporter -->
<g id="edge30" class="edge">
<title>host:raspberrypi&#45;&gt;svc:pihole&#45;exporter</title>
<path fill="none" stroke="#6b7280" stroke-dasharray="5,2" d="M88.07,-2021C88.07,-2021 151.29,-2021 151.29,-2021"/>
<polygon fill="#6b7280" stroke="#6b7280" points="151.29,-2024.5 161.29,-2021 151.29,-2017.5 151.29,-2024.5"/>
<!-- leg_host -->
<g id="node31" class="node">
<title>leg_host</title>
<polygon fill="#eff6ff" stroke="black" points="142.38,-2712 71.88,-2712 67.88,-2708 67.88,-2676 138.38,-2676 142.38,-2680 142.38,-2712"/>
<polyline fill="none" stroke="black" points="138.38,-2708 67.88,-2708"/>
<polyline fill="none" stroke="black" points="138.38,-2708 138.38,-2676"/>
<polyline fill="none" stroke="black" points="138.38,-2708 142.38,-2712"/>
<text text-anchor="middle" x="105.12" y="-2690.88" font-family="Helvetica,sans-Serif" font-size="10.00">Host cluster</text>
</g>
<!-- leg_cat -->
<g id="node32" class="node">
<title>leg_cat</title>
<polygon fill="#f8fbff" stroke="black" points="379,-2712 376,-2716 355,-2716 352,-2712 281.25,-2712 281.25,-2676 379,-2676 379,-2712"/>
<text text-anchor="middle" x="330.12" y="-2690.88" font-family="Helvetica,sans-Serif" font-size="10.00">Service category</text>
</g>
<!-- leg_host&#45;&gt;leg_cat -->
<g id="edge1" class="edge">
<title>leg_host&#45;&gt;leg_cat</title>
<path fill="none" stroke="#64748b" stroke-dasharray="5,2" d="M142.45,-2694C176.9,-2694 229.26,-2694 269.77,-2694"/>
<polygon fill="#64748b" stroke="#64748b" points="269.61,-2697.5 279.61,-2694 269.61,-2690.5 269.61,-2697.5"/>
</g>
<!-- leg_svc -->
<g id="node33" class="node">
<title>leg_svc</title>
<path fill="#dcfce7" stroke="black" d="M554.5,-2712C554.5,-2712 477,-2712 477,-2712 471,-2712 465,-2706 465,-2700 465,-2700 465,-2688 465,-2688 465,-2682 471,-2676 477,-2676 477,-2676 554.5,-2676 554.5,-2676 560.5,-2676 566.5,-2682 566.5,-2688 566.5,-2688 566.5,-2700 566.5,-2700 566.5,-2706 560.5,-2712 554.5,-2712"/>
<text text-anchor="middle" x="515.75" y="-2690.88" font-family="Helvetica,sans-Serif" font-size="10.00">Container/service</text>
</g>
<!-- leg_cat&#45;&gt;leg_svc -->
<g id="edge2" class="edge">
<title>leg_cat&#45;&gt;leg_svc</title>
<path fill="none" stroke="#64748b" stroke-dasharray="5,2" d="M379.37,-2694C401.93,-2694 429.05,-2694 453.07,-2694"/>
<polygon fill="#64748b" stroke="#64748b" points="453.07,-2697.5 463.07,-2694 453.07,-2690.5 453.07,-2697.5"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 24 KiB