Initial Commit

This commit is contained in:
Frank Woeckener
2025-03-17 13:04:59 +01:00
commit 0b92efc1ea
8 changed files with 1056 additions and 0 deletions

146
docker-konzepte.svg Normal file
View File

@@ -0,0 +1,146 @@
<?xml version="1.0" encoding="utf-8"?>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 500 500">
<rect width="837.871" height="682.975" fill="#f5f5f5" x="-112.13" y="-81.335" style=""/>
<rect x="-93.032" y="-61.869" width="800" height="647.262" rx="10" ry="10" fill="#e9f0f5" stroke="#2496ed" stroke-width="2" style=""/>
<text x="-73.032" y="-31.869" font-family="Arial" font-size="18" font-weight="bold" fill="#333" style="white-space: pre; font-size: 18px;">Docker Host</text>
<rect x="-72.74" y="-11.954" width="760" height="490" rx="8" ry="8" fill="#f0f7fa" stroke="#2496ed" stroke-width="2" stroke-dasharray="5,5"/>
<text x="-53.032" y="18.131" font-family="Arial" font-size="16" font-weight="bold" fill="#333" style="white-space: pre; font-size: 16px;">Docker Engine</text>
<rect x="206.968" y="28.131" width="160" height="110" rx="5" ry="5" fill="#2496ed" stroke="#1e88e5" stroke-width="2"/>
<text x="286.968" y="53.131" font-family="Arial" font-size="14" font-weight="bold" fill="white" text-anchor="middle" style="white-space: pre; font-size: 14px;">Docker Daemon</text>
<rect x="221.968" y="63.131" width="130" height="25" rx="3" ry="3" fill="#1a75bb" stroke="#1e88e5" stroke-width="1"/>
<text x="286.968" y="80.131" font-family="Arial" font-size="11" fill="white" text-anchor="middle" style="white-space: pre; font-size: 11px;">containerd</text>
<rect x="221.968" y="93.131" width="130" height="25" rx="3" ry="3" fill="#1a75bb" stroke="#1e88e5" stroke-width="1"/>
<text x="286.968" y="110.131" font-family="Arial" font-size="11" fill="white" text-anchor="middle" style="white-space: pre; font-size: 11px;">runc</text>
<rect x="-53.032" y="28.131" width="160" height="110" rx="5" ry="5" fill="#2496ed" stroke="#1e88e5" stroke-width="2"/>
<text x="26.968" y="53.131" font-family="Arial" font-size="14" font-weight="bold" fill="white" text-anchor="middle" style="white-space: pre; font-size: 14px;">Docker Client</text>
<rect x="-38.032" y="63.131" width="130" height="25" rx="3" ry="3" fill="#1a75bb" stroke="#1e88e5" stroke-width="1"/>
<text x="26.968" y="80.131" font-family="Arial" font-size="11" fill="white" text-anchor="middle" style="white-space: pre; font-size: 11px;">CLI (docker)</text>
<rect x="-38.032" y="93.131" width="130" height="25" rx="3" ry="3" fill="#1a75bb" stroke="#1e88e5" stroke-width="1"/>
<text x="26.968" y="110.131" font-family="Arial" font-size="11" fill="white" text-anchor="middle" style="white-space: pre; font-size: 11px;">docker-compose</text>
<rect x="476.968" y="28.131" width="160" height="110" rx="5" ry="5" fill="#2496ed" stroke="#1e88e5" stroke-width="2"/>
<text x="556.968" y="53.131" font-family="Arial" font-size="14" font-weight="bold" fill="white" text-anchor="middle" style="white-space: pre; font-size: 14px;">Docker Registry</text>
<rect x="491.968" y="63.131" width="130" height="25" rx="3" ry="3" fill="#1a75bb" stroke="#1e88e5" stroke-width="1"/>
<text x="556.968" y="80.131" font-family="Arial" font-size="11" fill="white" text-anchor="middle" style="white-space: pre; font-size: 11px;">Docker Hub</text>
<rect x="491.968" y="93.131" width="130" height="25" rx="3" ry="3" fill="#1a75bb" stroke="#1e88e5" stroke-width="1"/>
<text x="556.968" y="110.131" font-family="Arial" font-size="11" fill="white" text-anchor="middle" style="white-space: pre; font-size: 11px;">Private Registry</text>
<rect x="6.968" y="183.131" width="160" height="110" rx="5" ry="5" fill="#3fe0d0" stroke="#1e88e5" stroke-width="2"/>
<text x="86.968" y="203.131" font-family="Arial" font-size="14" font-weight="bold" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 14px;">Images</text>
<rect x="21.968" y="213.131" width="130" height="20" rx="3" ry="3" fill="#2ed1c3" stroke="#1e88e5" stroke-width="1"/>
<text x="86.968" y="227.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Basis-Layer (OS)</text>
<rect x="21.968" y="233.131" width="130" height="20" rx="3" ry="3" fill="#2ed1c3" stroke="#1e88e5" stroke-width="1"/>
<text x="86.968" y="247.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Anwendungs-Layer</text>
<rect x="21.968" y="253.131" width="130" height="20" rx="3" ry="3" fill="#2ed1c3" stroke="#1e88e5" stroke-width="1"/>
<text x="86.968" y="267.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Konfiguration</text>
<rect x="236.968" y="183.131" width="160" height="110" rx="5" ry="5" fill="#3fe0d0" stroke="#1e88e5" stroke-width="2"/>
<text x="316.968" y="203.131" font-family="Arial" font-size="14" font-weight="bold" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 14px;">Container</text>
<rect x="251.968" y="213.131" width="130" height="20" rx="3" ry="3" fill="#2ed1c3" stroke="#1e88e5" stroke-width="1"/>
<text x="316.968" y="227.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Created → Running</text>
<rect x="251.968" y="233.131" width="130" height="20" rx="3" ry="3" fill="#2ed1c3" stroke="#1e88e5" stroke-width="1"/>
<text x="316.968" y="247.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Paused / Stopped</text>
<rect x="251.968" y="253.131" width="130" height="20" rx="3" ry="3" fill="#2ed1c3" stroke="#1e88e5" stroke-width="1"/>
<text x="316.968" y="267.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Exited → Removed</text>
<rect x="466.968" y="183.131" width="160" height="110" rx="5" ry="5" fill="#3fe0d0" stroke="#1e88e5" stroke-width="2"/>
<text x="546.968" y="203.131" font-family="Arial" font-size="14" font-weight="bold" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 14px;">Docker Compose</text>
<rect x="481.968" y="213.131" width="130" height="20" rx="3" ry="3" fill="#2ed1c3" stroke="#1e88e5" stroke-width="1"/>
<text x="546.968" y="227.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Multi-Services</text>
<rect x="481.968" y="233.131" width="130" height="20" rx="3" ry="3" fill="#2ed1c3" stroke="#1e88e5" stroke-width="1"/>
<text x="546.968" y="247.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Abhängigkeiten</text>
<rect x="481.968" y="253.131" width="130" height="20" rx="3" ry="3" fill="#2ed1c3" stroke="#1e88e5" stroke-width="1"/>
<text x="546.968" y="267.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">YAML-Konfiguration</text>
<rect x="6.968" y="338.131" width="160" height="110" rx="5" ry="5" fill="#ffcc80" stroke="#ff9800" stroke-width="2"/>
<text x="86.968" y="358.131" font-family="Arial" font-size="14" font-weight="bold" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 14px;">Volumes</text>
<rect x="21.968" y="368.131" width="130" height="20" rx="3" ry="3" fill="#ffb74d" stroke="#ff9800" stroke-width="1"/>
<text x="86.968" y="382.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Named Volumes</text>
<rect x="21.968" y="388.131" width="130" height="20" rx="3" ry="3" fill="#ffb74d" stroke="#ff9800" stroke-width="1"/>
<text x="86.968" y="402.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Bind Mounts</text>
<rect x="21.968" y="408.131" width="130" height="20" rx="3" ry="3" fill="#ffb74d" stroke="#ff9800" stroke-width="1"/>
<text x="86.968" y="422.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">tmpfs Mounts</text>
<rect x="236.968" y="338.131" width="160" height="110" rx="5" ry="5" fill="#ffcc80" stroke="#ff9800" stroke-width="2"/>
<text x="316.968" y="358.131" font-family="Arial" font-size="14" font-weight="bold" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 14px;">Networks</text>
<rect x="251.968" y="368.131" width="130" height="20" rx="3" ry="3" fill="#ffb74d" stroke="#ff9800" stroke-width="1"/>
<text x="316.968" y="382.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Bridge Network</text>
<rect x="251.968" y="388.131" width="130" height="20" rx="3" ry="3" fill="#ffb74d" stroke="#ff9800" stroke-width="1"/>
<text x="316.968" y="402.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Host Network</text>
<rect x="251.968" y="408.131" width="130" height="20" rx="3" ry="3" fill="#ffb74d" stroke="#ff9800" stroke-width="1"/>
<text x="316.968" y="422.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Overlay Network</text>
<rect x="466.968" y="338.131" width="160" height="110" rx="5" ry="5" fill="#ffcc80" stroke="#ff9800" stroke-width="2"/>
<text x="546.968" y="358.131" font-family="Arial" font-size="14" font-weight="bold" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 14px;">Sicherheit</text>
<rect x="481.968" y="368.131" width="130" height="20" rx="3" ry="3" fill="#ffb74d" stroke="#ff9800" stroke-width="1"/>
<text x="546.968" y="382.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Namespaces</text>
<rect x="481.968" y="388.131" width="130" height="20" rx="3" ry="3" fill="#ffb74d" stroke="#ff9800" stroke-width="1"/>
<text x="546.968" y="402.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Cgroups</text>
<rect x="481.968" y="408.131" width="130" height="20" rx="3" ry="3" fill="#ffb74d" stroke="#ff9800" stroke-width="1"/>
<text x="546.968" y="422.131" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 10px;">Capabilities</text>
<rect x="6.968" y="148.131" width="160" height="30" rx="5" ry="5" fill="#fff" stroke="#555" stroke-width="2"/>
<text x="86.968" y="168.131" font-family="Arial" font-size="14" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 14px;">Dockerfile</text>
<rect x="466.968" y="148.131" width="160" height="30" rx="5" ry="5" fill="#fff" stroke="#555" stroke-width="2"/>
<text x="546.968" y="168.131" font-family="Arial" font-size="14" fill="#333" text-anchor="middle" style="white-space: pre; font-size: 14px;">docker-compose.yml</text>
<path d="M 106.968 78.131 L 205.452 78.131" stroke="#555" stroke-width="2" fill="none" style=""/>
<polygon points="201.968 73.131 206.968 78.131 201.968 83.131" fill="#555"/>
<text x="156.968" y="70.131" font-family="Arial" font-size="10" fill="#555" text-anchor="middle" style="white-space: pre; font-size: 10px;">REST API</text>
<path d="M 368.052 77.614 L 474.428 77.614" stroke="#555" stroke-width="2" fill="none" style=""/>
<polygon points="471.968 73.131 476.968 78.131 471.968 83.131" fill="#555"/>
<text x="421.968" y="70.131" font-family="Arial" font-size="10" fill="#555" text-anchor="middle" style="white-space: pre; font-size: 10px;">pull/push</text>
<path d="M 286.968 138.131 L 167.087 184.449" stroke="#555" stroke-width="2" fill="none" style=""/>
<polygon points="91.968 178.131 86.968 183.131 81.968 178.131" fill="#555"/>
<text x="278.033" y="161.649" font-family="Arial" font-size="10" fill="#555" text-anchor="middle" style="white-space: pre; font-size: 10px;">verwaltet</text>
<path d="M 166.968 238.131 L 234.383 238.131" stroke="#555" stroke-width="2" fill="none" style=""/>
<polygon points="231.968 233.131 236.968 238.131 231.968 243.131" fill="#555"/>
<text x="201.968" y="228.131" font-family="Arial" font-size="10" fill="#555" text-anchor="middle" style="white-space: pre; font-size: 10px;">erzeugt</text>
<path d="M 466.968 238.131 L 400.325 238.131" stroke="#555" stroke-width="2" fill="none" style=""/>
<polygon points="401.968 233.131 396.968 238.131 401.968 243.131" fill="#555"/>
<text x="431.968" y="228.131" font-family="Arial" font-size="10" fill="#555" text-anchor="middle" style="white-space: pre; font-size: 10px;">orchestriert</text>
<path d="M 256.968 293.131 L 86.816 334.359" stroke="#555" stroke-width="2" fill="none" style=""/>
<polygon points="91.968 333.131 86.968 338.131 81.968 333.131" fill="#555"/>
<text x="148.434" y="313.331" font-family="Arial" font-size="10" fill="#555" text-anchor="middle" style="white-space: pre; font-size: 10px;">nutzt</text>
<path d="M 316.968 293.131 L 316.968 335.131" stroke="#555" stroke-width="2" fill="none" style=""/>
<polygon points="311.968 333.131 316.968 338.131 321.968 333.131" fill="#555"/>
<text x="279.216" y="320.691" font-family="Arial" font-size="10" fill="#555" text-anchor="middle" style="white-space: pre; font-size: 10px;">kommuniziert</text>
<path d="M 376.968 293.131 L 506.863 334.249" stroke="#555" stroke-width="2" fill="none" style=""/>
<polygon points="501.968 333.131 506.968 338.131 511.968 333.131" fill="#555"/>
<text x="477.634" y="316.624" font-family="Arial" font-size="10" fill="#555" text-anchor="middle" style="white-space: pre; font-size: 10px;">isoliert</text>
<polygon points="161.968 182.131 166.968 187.131 171.968 182.131" fill="#555" style="transform-box: fill-box; transform-origin: 50% 50%;" transform="matrix(0.5, 0.866025, -0.866025, 0.5, 0.000005, -0.000004)"/>
<text x="-10.935" y="173.575" font-family="Arial" font-size="10" fill="#555" text-anchor="middle" style="white-space: pre; font-size: 10px;">baut</text>
<polygon points="543.002 177.572 548.002 182.572 553.002 177.572" fill="#555"/>
<text x="433.852" y="167.048" font-family="Arial" font-size="10" fill="#555" text-anchor="middle" style="white-space: pre; font-size: 10px;">konfiguriert</text>
<g transform="matrix(1, 0, 0, 1, -53.032021, 458.13089)">
<rect width="300" height="25" rx="5" ry="5" fill="#e0e0e0" stroke="#555" stroke-width="1"/>
<text x="150" y="17" font-family="Arial" font-size="12" fill="#333" text-anchor="middle" style="white-space: pre;">Multi-Stage Build Prozess</text>
<rect x="10" y="30" width="80" height="20" rx="3" ry="3" fill="#d4d4d4" stroke="#555" stroke-width="1"/>
<text x="50" y="44" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre;">Build Stage</text>
<rect x="110" y="30" width="80" height="20" rx="3" ry="3" fill="#d4d4d4" stroke="#555" stroke-width="1"/>
<text x="150" y="44" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre;">Test Stage</text>
<rect x="210" y="30" width="80" height="20" rx="3" ry="3" fill="#d4d4d4" stroke="#555" stroke-width="1"/>
<text x="250" y="44" font-family="Arial" font-size="10" fill="#333" text-anchor="middle" style="white-space: pre;">Prod Stage</text>
<path d="M90 40 L110 40" stroke="#555" stroke-width="1" fill="none"/>
<polygon points="105,37 110,40 105,43" fill="#555"/>
<path d="M190 40 L210 40" stroke="#555" stroke-width="1" fill="none"/>
<polygon points="205,37 210,40 205,43" fill="#555"/>
</g>
<g transform="matrix(1, 0, 0, 1, 306.967987, 458.13089)">
<rect width="350" height="25" rx="5" ry="5" fill="#e0e0e0" stroke="#555" stroke-width="1"/>
<text x="175" y="17" font-family="Arial" font-size="12" fill="#333" text-anchor="middle" style="white-space: pre;">Container vs. VM Architektur</text>
<rect x="20" y="30" width="120" height="15" rx="2" ry="2" fill="#2496ed" stroke="#555" stroke-width="1"/>
<text x="80" y="41" font-family="Arial" font-size="9" fill="white" text-anchor="middle" style="white-space: pre;">Container</text>
<rect x="20" y="45" width="120" height="15" rx="2" ry="2" fill="#2496ed" stroke="#555" stroke-width="1"/>
<text x="80" y="56" font-family="Arial" font-size="9" fill="white" text-anchor="middle" style="white-space: pre;">Container</text>
<rect x="20" y="60" width="120" height="15" rx="2" ry="2" fill="#1a75bb" stroke="#555" stroke-width="1"/>
<text x="80" y="71" font-family="Arial" font-size="9" fill="white" text-anchor="middle" style="white-space: pre;">Docker Engine</text>
<rect x="20" y="75" width="120" height="15" rx="2" ry="2" fill="#ccc" stroke="#555" stroke-width="1"/>
<text x="80" y="86" font-family="Arial" font-size="9" fill="#333" text-anchor="middle" style="white-space: pre;">Host OS Kernel</text>
<rect x="20" y="90" width="120" height="15" rx="2" ry="2" fill="#aaa" stroke="#555" stroke-width="1"/>
<text x="80" y="101" font-family="Arial" font-size="9" fill="#333" text-anchor="middle" style="white-space: pre;">Infrastruktur</text>
<rect x="210" y="30" width="120" height="15" rx="2" ry="2" fill="#85c47c" stroke="#555" stroke-width="1"/>
<text x="270" y="41" font-family="Arial" font-size="9" fill="#333" text-anchor="middle" style="white-space: pre;">App</text>
<rect x="210" y="45" width="120" height="15" rx="2" ry="2" fill="#85c47c" stroke="#555" stroke-width="1"/>
<text x="270" y="56" font-family="Arial" font-size="9" fill="#333" text-anchor="middle" style="white-space: pre;">Gast OS</text>
<rect x="210" y="60" width="120" height="15" rx="2" ry="2" fill="#76b96c" stroke="#555" stroke-width="1"/>
<text x="270" y="71" font-family="Arial" font-size="9" fill="#333" text-anchor="middle" style="white-space: pre;">Hypervisor</text>
<rect x="210" y="75" width="120" height="15" rx="2" ry="2" fill="#ccc" stroke="#555" stroke-width="1"/>
<text x="270" y="86" font-family="Arial" font-size="9" fill="#333" text-anchor="middle" style="white-space: pre;">Host OS</text>
<rect x="210" y="90" width="120" height="15" rx="2" ry="2" fill="#aaa" stroke="#555" stroke-width="1"/>
<text x="270" y="101" font-family="Arial" font-size="9" fill="#333" text-anchor="middle" style="white-space: pre;">Infrastruktur</text>
<text x="80" y="115" font-family="Arial" font-size="10" font-weight="bold" fill="#333" text-anchor="middle" style="white-space: pre;">Docker Container</text>
<text x="270" y="115" font-family="Arial" font-size="10" font-weight="bold" fill="#333" text-anchor="middle" style="white-space: pre;">Virtuelle Maschine</text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 18 KiB