Files
progcode/web/public/assets/editorial/2020/docker-local-environment-2020.svg
T
huncode 58941bea98
Build and deploy / deploy (push) Successful in 13s
revise January 2020 Docker articles
2026-07-31 11:13:03 +03:00

49 lines
4.1 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 720 1180" role="img" aria-labelledby="title desc">
<title id="title">Локальное Docker-окружение: код, контейнеры, тома и внутренняя сеть</title>
<desc id="desc">Вертикальная схема показывает рабочую копию на хосте, bind mount в контейнер web, отдельный named volume для node_modules, сеть Compose с сервисом db и named volume PostgreSQL.</desc>
<defs>
<linearGradient id="background" x1="0" x2="1" y1="0" y2="1">
<stop stop-color="#0f1f36"/>
<stop offset="1" stop-color="#142b47"/>
</linearGradient>
<marker id="arrow" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse">
<path d="M 0 0 L 10 5 L 0 10 z" fill="#7dd3fc"/>
</marker>
</defs>
<rect width="720" height="1180" rx="36" fill="url(#background)"/>
<text x="56" y="72" fill="#f8fafc" font-family="Arial, sans-serif" font-size="32" font-weight="700">Локальный контракт</text>
<text x="56" y="108" fill="#b9d5e9" font-family="Arial, sans-serif" font-size="21">Код, зависимости, данные и сеть — разные слои</text>
<rect x="56" y="156" width="608" height="150" rx="20" fill="#183b5a" stroke="#72d4ff" stroke-width="2"/>
<text x="88" y="208" fill="#9ee7ff" font-family="Arial, sans-serif" font-size="21" font-weight="700">ХОСТ</text>
<text x="88" y="248" fill="#ffffff" font-family="Arial, sans-serif" font-size="28" font-weight="700">Рабочая копия</text>
<text x="88" y="280" fill="#d6e8f5" font-family="Arial, sans-serif" font-size="20">исходники и редактор</text>
<path d="M360 306 V374" stroke="#7dd3fc" stroke-width="4" marker-end="url(#arrow)"/>
<text x="386" y="350" fill="#b9d5e9" font-family="Arial, sans-serif" font-size="20">bind mount</text>
<rect x="56" y="392" width="608" height="184" rx="20" fill="#173d45" stroke="#5eead4" stroke-width="2"/>
<text x="88" y="442" fill="#81f6df" font-family="Arial, sans-serif" font-size="21" font-weight="700">CONTAINER WEB</text>
<text x="88" y="482" fill="#ffffff" font-family="Arial, sans-serif" font-size="28" font-weight="700">/srv/app</text>
<text x="88" y="516" fill="#d6f6ee" font-family="Arial, sans-serif" font-size="20">npm run dev · порт 3000</text>
<text x="88" y="548" fill="#d6f6ee" font-family="Arial, sans-serif" font-size="20">DATABASE_URL → db:5432</text>
<path d="M504 576 V650" stroke="#5eead4" stroke-width="4" marker-end="url(#arrow)"/>
<text x="262" y="628" fill="#b9d5e9" font-family="Arial, sans-serif" font-size="20">named volume</text>
<rect x="336" y="670" width="328" height="106" rx="18" fill="#243951" stroke="#a5b4fc" stroke-width="2"/>
<text x="366" y="716" fill="#c7d2fe" font-family="Arial, sans-serif" font-size="20" font-weight="700">node_modules</text>
<text x="366" y="750" fill="#e0e7ff" font-family="Arial, sans-serif" font-size="19">зависимости контейнера</text>
<path d="M264 576 V818" stroke="#7dd3fc" stroke-width="4" marker-end="url(#arrow)"/>
<text x="88" y="676" fill="#b9d5e9" font-family="Arial, sans-serif" font-size="20">внутренняя сеть</text>
<rect x="56" y="838" width="608" height="154" rx="20" fill="#3a294a" stroke="#d8b4fe" stroke-width="2"/>
<text x="88" y="888" fill="#ead5ff" font-family="Arial, sans-serif" font-size="21" font-weight="700">SERVICE DB</text>
<text x="88" y="928" fill="#ffffff" font-family="Arial, sans-serif" font-size="28" font-weight="700">PostgreSQL</text>
<text x="88" y="960" fill="#f3e8ff" font-family="Arial, sans-serif" font-size="20">доступен как db, не localhost</text>
<path d="M360 992 V1058" stroke="#d8b4fe" stroke-width="4" marker-end="url(#arrow)"/>
<rect x="56" y="1074" width="608" height="72" rx="18" fill="#27233f" stroke="#c4b5fd" stroke-width="2"/>
<text x="88" y="1120" fill="#ede9fe" font-family="Arial, sans-serif" font-size="22" font-weight="700">postgres_data · named volume</text>
</svg>