{ "meta": { "title": "Údaje, cesty a sieť | ProxMenux", "description": "Ako OCI manager Apps uchováva údaje kontajnera OCI: disky kontajnera, adresáre hostiteľa, pripojenia cez rclone, adresy a súkromné siete." }, "header": { "title": "Údaje, cesty a sieť", "description": "Čo sa nachádza v rootfs, čo sa zachová pri jeho výmene, ako sa zdieľajú údaje medzi kontajnermi a ako každý kontajner získa svoju adresu.", "section": "OCI manager Apps" }, "sections": [ { "id": "intro", "blocks": [ { "calloutInfo": { "title": "Trvalé uloženie údajov sa určí pred vytvorením LXC", "body": "Pred vytvorením kontajnera sa načítajú zväzky deklarované obrazom a jeho súborom Compose. Každá cesta, ktorá sa má zachovať po aktualizácii, sa stane prípojným bodom nezávislým od rootfs. Rootfs tak obsahuje iba súbory patriace obrazu a možno ho vymeniť." } } ] }, { "id": "questions", "title": "Na čo sa pýta inštalátor", "intro": "Šablóna poskytuje cesty potrebné pre aplikáciu. Každá sa umiestni na disk kontajnera alebo do adresára hostiteľa. Pred súhrnom možno pridať ďalšie cesty.", "blocks": [ { "steps": { "items": [ { "title": "Potrebné cesty", "body": "Zobrazia sa /config, /data, knižnice, stiahnuté súbory a všetky zväzky deklarované aplikáciou." }, { "title": "Umiestnenie", "body": "Každá cesta sa umiestni na disk kontajnera alebo do existujúceho adresára hostiteľa." }, { "title": "Úložisko a veľkosť", "body": "Na úložisku Proxmox VE sa vytvorí disk kontajnera so zadanou veľkosťou. Predvolená inštalácia sa raz opýta na úložisko kontajnera a jeho údajov, ak má uzol viac ako jedno; rozšírená inštalácia sa pri každej ceste pýta na úložisko tesne pred veľkosťou a navrhuje úložisko rootfs. Disk sa zobrazuje ako vm-VMID-disk-N a pripája sa ako mpN." }, { "title": "Adresár hostiteľa", "body": "Adresár hostiteľa sa zadáva jeho cestou. Ak neexistuje, vytvorí sa a jeho vlastníkom bude používateľ hostiteľa, na ktorého sa mapuje používateľ kontajnera." }, { "title": "Ďalšie cesty", "body": "Pred inštaláciou možno pridať ďalšie dvojice cesty alebo zväzku hostiteľa a cesty v kontajneri." }, { "title": "Súhrn", "body": "Pred vytvorením CT sa zobrazí úplné mapovanie ciest a uloží sa do konfigurácie inštalácie." } ] } } ] }, { "id": "options", "title": "Dve možnosti trvalého uloženia", "blocks": [ { "table": { "headers": [ "Vlastnosť", "Disk kontajnera", "Adresár hostiteľa" ], "rows": [ [ "V konfigurácii", "mpN: STORAGE:vm-VMID-disk-N,mp=/config,backup=1,size=16G", "mpN: /mnt/oci-shared/media,mp=/data/media" ], [ "Záloha kontajnera (vzdump)", "Zahrnutý pri backup=1", "Nezahrnutý" ], [ "Veľkosť", "Pevná; zväčšuje sa zmenou veľkosti prípojného bodu", "Voľné miesto v súborovom systéme alebo datasete hostiteľa" ], [ "Ostatné kontajnery", "Pripája ho iba kontajner, ktorému patrí", "Ten istý adresár možno pripojiť do viacerých kontajnerov" ], [ "Snapshoty a obnova", "Spravuje ich Proxmox VE spolu s CT", "Spravujú sa na úložisku hostiteľa" ], [ "Pri odstránení aplikácie", "Odstráni sa spolu s kontajnerom", "Zachová sa aj s obsahom" ], [ "Pri presune CT na iný uzol", "Presunie sa spolu s CT", "Na druhom uzle musí existovať rovnaká cesta" ] ] } }, { "p": "Rootfs je vyhradený pre binárne súbory a obsah obrazu. Aktualizácia alebo opätovné vytvorenie ho nahradí bez zásahu do ktoréhokoľvek z dvoch typov prípojných bodov." }, { "p": "Adresár hostiteľa sa pripojí so všetkým, čo v ňom má hostiteľ pripojené. Adresár ako /mnt/pve zobrazí v kontajneri svoje sieťové zdieľania, disky a datasety a to, čo tam hostiteľ neskôr pripojí alebo odpojí, sa zobrazí alebo zmizne bez reštartu kontajnera. Adresár pridaný iba na čítanie je iba na čítanie spolu s tým, čo je v ňom pripojené pri spustení kontajnera. Súborový systém, ktorý hostiteľ pripojí neskôr, prichádza s oprávneniami, s ktorými ho hostiteľ pripojí, a pri reštarte kontajnera bude tiež iba na čítanie." } ] }, { "id": "example", "title": "Príklad: kontajner s oboma umiestneniami", "blocks": [ { "code": { "title": "Jellyfin nainštalovaný ako CT 151 na local-lvm (úryvok)", "code": "rootfs: local-lvm:vm-151-disk-0,size=8G\n# Container disk, part of the CT backup\nmp0: local-lvm:vm-151-disk-1,mp=/config,backup=1,size=16G\n\n# Host directory, outside the CT backup\nmp1: /mnt/oci-shared/media,mp=/data/media" } }, { "p": "Aktualizácia alebo opätovné vytvorenie nahradí iba rootfs: mp0 zachová používateľov, knižnice a nastavenia a mp1 naďalej sprístupňuje rovnaké médiá. Obnova zálohy CT obnoví /config. Adresár s médiami sa v prípade potreby obnovuje zo zálohy úložiska hostiteľa." }, { "flow": { "nodes": [ { "label": "Uložená konfigurácia", "detail": "/config" }, { "label": "Umiestnenie", "detail": "Disk kontajnera\nalebo adresár hostiteľa" }, { "label": "LXC", "detail": "Pre aplikáciu\nvždy /config" } ], "caption": "Aplikácia vidí cestu deklarovanú obrazom; mení sa iba miesto jej uloženia." } } ] }, { "id": "shared", "title": "Jeden adresár hostiteľa, viacero kontajnerov", "blocks": [ { "mermaid": { "chartCode": "flowchart TB\n H[\"{{host}}
/mnt/oci-shared/media\"]\n H --> Q[\"qBittorrent
/data\"]\n H --> J[\"Jellyfin
/data\"]\n H --> R[\"Radarr / Sonarr
/data\"]\n Q -. \"{{config}}\" .-> QV[(\"/config mpN\")]\n J -. \"{{config}}\" .-> JV[(\"/config mpN\")]\n R -. \"{{config}}\" .-> RV[(\"/config mpN\")]", "labels": { "host": "Adresár hostiteľa", "config": "Vlastná konfigurácia" } } }, { "p": "Každý kontajner uchováva svoju konfiguráciu na vlastnom disku. Knižnica alebo stiahnuté súbory sú v jednom adresári hostiteľa, pripojenom na rovnakej vnútornej ceste v každom kontajneri. Cesta, do ktorej jedna aplikácia zapisuje, je preto rovnaká ako cesta, z ktorej druhá číta." } ] }, { "id": "rclone", "title": "Cloudové úložisko cez aplikáciu rclone", "intro": "Položka rclone v katalógu okrem inštalácie ponúka aj možnosť Aktivovať pripojenie v existujúcom kontajneri OCI s rclone. Pripojí sa vzdialené úložisko, ktoré už bolo vytvorené a autorizované vo webovom rozhraní rclone, a sprístupní sa na hostiteľovi. Ostatné kontajnery ho môžu používať ako adresár hostiteľa.", "blocks": [ { "steps": { "items": [ { "title": "Kontajner a vzdialené úložisko", "body": "VMID kontajnera s rclone, presný názov vzdialeného úložiska a voliteľne cesta v ňom." }, { "title": "Názov pripojenia a vyrovnávacia pamäť", "body": "Názov pripojenia a režim vyrovnávacej pamäte VFS: off, minimal, writes alebo full (predvolený)." }, { "title": "Sprístupnené zobrazenia", "body": "Spoločný koreňový adresár, predvolene /mnt/oci-shared, obsahuje zobrazenie na čítanie aj zápis v /mnt/oci-shared/remotes/NAME a zobrazenie iba na čítanie v /mnt/oci-shared/remotes-ro/NAME." }, { "title": "Aktivácia", "body": "Po potvrdení sa CT zastaví, nastaví sa jeho spúšťací príkaz a hookscript Proxmox VE a znova sa spustí. Operácia čaká, kým budú obe zobrazenia pripojené na hostiteľovi." } ] } }, { "calloutInfo": { "title": "Ak sa pripojenie neaktivuje", "body": "Obnoví sa predchádzajúca konfigurácia kontajnera a kontajner sa znova spustí. Ak aktivácia zlyhá, rclone tak zostane v pôvodnom stave." } } ] }, { "id": "network", "title": "Adresy a siete", "intro": "Aplikácia s jedným kontajnerom potrebuje adresu. Aplikácia s viacerými kontajnermi potrebuje aj stabilnú sieť na komunikáciu medzi svojimi kontajnermi.", "blocks": [ { "cards": { "items": [ { "icon": "network", "title": "Aplikácia s jedným kontajnerom", "body": "Vyberie sa sieťový most a DHCP alebo pevná adresa vo formáte CIDR. LXC má vlastnú adresu a súhrn zobrazuje úplné URL služieb." }, { "icon": "waypoints", "title": "Aplikácia s viacerými kontajnermi", "body": "Vyhľadá sa voľná podsieť a vytvorí sa trvalý súkromný sieťový most. Každý kontajner — hlavná aplikácia, databáza alebo vyrovnávacia pamäť — v ňom dostane pevnú adresu." } ] } }, { "p": "Prístupové rozhranie môže mať značku VLAN. Pokročilá inštalácia ju ponúkne pri nastavení adresy a cez Upraviť ju možno zmeniť alebo odstrániť pri aplikácii s jedným kontajnerom. Značka nastavená v Proxmoxe sa zachová. Pri použití značky ProxMenux overuje aplikáciu zvnútra jej kontajnera, takže server nemusí mať prístup do tejto VLAN." }, { "flow": { "nodes": [ { "label": "LAN", "detail": "Dostupná adresa\niba pre hlavnú službu" }, { "label": "Hlavný LXC", "detail": "Web / API\nLAN + súkromná sieť" }, { "label": "Súkromná sieť", "detail": "PostgreSQL · Valkey · ML\npevné adresy" } ], "caption": "Závislé služby komunikujú cez súkromnú sieť a nemajú adresu v LAN." } }, { "p": "Uložená konfigurácia aplikácie uchováva sieťový most, podsieť, adresy a vzťahy medzi službami. Pri aktualizácii sa pre všetky kontajnery aplikácie znovu použije rovnaké usporiadanie siete. ProxMenux Monitor otvára hlavný kontajner na jeho adrese v LAN, nie na adrese v súkromnej sieti." } ] }, { "id": "ownership", "title": "Vlastníctvo súborov a adresárov", "blocks": [ { "list": { "items": [ "Nové adresáre sa vytvárajú s UID a GID, na ktoré sa mapuje neprivilegovaný LXC.", "Vlastníctvo existujúcich adresárov sa nemení rekurzívne.", "Sockety, systémové súbory a citlivé cesty sa neponúkajú ako bežné adresáre hostiteľa." ] } } ] }, { "id": "backup", "title": "Čo obsahuje záloha kontajnera", "blocks": [ { "table": { "headers": [ "Položka", "V zálohe vzdump kontajnera CT", "Kde sa uchováva" ], "rows": [ [ "Rootfs OCI", "Áno", "V zálohe CT; možno ho tiež znovu vytvoriť z obrazu a uloženej konfigurácie" ], [ "Disk kontajnera s backup=1", "Áno", "Záloha CT" ], [ "Adresár hostiteľa", "Nie", "Záloha úložiska hostiteľa" ], [ "Uložená konfigurácia inštalácie", "Áno, kópia uložená v CT", "/.proxmenux/oci-record.json v CT; ďalšie kópie hostiteľa a klastra sa uchovávajú samostatne" ], [ "Aplikácia s viacerými kontajnermi", "Každý kontajner vo vlastnej zálohe", "Zálohy všetkých kontajnerov spolu s uloženou konfiguráciou aplikácie a jej sieťovým mostom na hostiteľovi" ] ] } } ] } ] }