mirror of
https://github.com/MacRimi/ProxMenux.git
synced 2026-11-02 10:52:22 +00:00
172 lines
7.3 KiB
JSON
172 lines
7.3 KiB
JSON
{
|
|
"meta": {
|
|
"title": "Ako sa prispôsobí obraz OCI | ProxMenux",
|
|
"description": "Od repozitára obrazu a jeho súboru Compose cez skontrolovateľnú šablónu a plán nasadenia až po natívny LXC v Proxmox VE, bez Dockeru v kontajneri."
|
|
},
|
|
"header": {
|
|
"title": "Ako sa prispôsobí obraz OCI",
|
|
"description": "Od repozitára obrazu a jeho súboru Compose cez skontrolovateľnú šablónu a plán nasadenia až po natívny LXC, bez inštalácie Dockeru v kontajneri.",
|
|
"section": "OCI manager Apps"
|
|
},
|
|
"sections": [
|
|
{
|
|
"id": "pipeline",
|
|
"title": "Postup prispôsobenia",
|
|
"blocks": [
|
|
{
|
|
"mermaid": {
|
|
"chartCode": "flowchart TB\n A[\"{{repo}}\"] --> B[\"Compose + README\"]\n B --> C[\"{{converter}}\"]\n C --> D[\"{{template}}\"]\n D --> E{\"{{blockers}}\"}\n E -- \"{{no}}\" --> F[\"{{review}}\"]\n F --> D\n E -- \"{{yes}}\" --> G[\"{{plan}}\"]\n G --> H[\"pct create\"]\n H --> I[\"{{lxc}}\"]",
|
|
"labels": {
|
|
"repo": "Repozitár obrazu",
|
|
"converter": "Konvertor",
|
|
"template": "Šablóna JSON",
|
|
"blockers": "Bez prekážok?",
|
|
"no": "Nie",
|
|
"yes": "Áno",
|
|
"review": "Kontrola / overlay",
|
|
"plan": "Plán nasadenia",
|
|
"lxc": "Natívny LXC"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"p": "Konvertor načíta obraz a súbor Compose zverejnené projektom a vytvorí šablónu JSON. Ak niektoré požiadavky ešte nie sú prispôsobené a bránia inštalácii, šablóna pred zverejnením v katalógu prejde kontrolou. Súbor overených úprav, nazývaný overlay, tieto prekážky vyrieši. Na inštaláciu sa ponúkajú iba šablóny bez nevyriešených prekážok."
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "template",
|
|
"title": "Čo šablóna zachováva",
|
|
"blocks": [
|
|
{
|
|
"cards": {
|
|
"items": [
|
|
{
|
|
"icon": "archive",
|
|
"title": "Identita obrazu",
|
|
"body": "Repozitár, priebežne aktualizovaná značka, architektúra, zistený digest a revízia zdroja."
|
|
},
|
|
{
|
|
"icon": "braces",
|
|
"title": "Konfigurácia kontajnera",
|
|
"body": "Entrypoint, Cmd, prostredie, používateľ, pracovný adresár, signál na zastavenie, porty a zväzky."
|
|
},
|
|
{
|
|
"icon": "layers",
|
|
"title": "Prispôsobenie pre Proxmox VE",
|
|
"body": "Zdroje, zabezpečenie, prípojné body, zariadenia, sysctls, kontroly stavu a potrebné úpravy pre každú položku vrátane ich zdôvodnenia."
|
|
},
|
|
{
|
|
"icon": "shield",
|
|
"title": "Kompatibilita",
|
|
"body": "Podporované kľúče, neprispôsobené požiadavky brániace inštalácii a stav každej kontroly."
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "sources",
|
|
"title": "OCI poskytuje proces, Compose poskytuje prostredie",
|
|
"blocks": [
|
|
{
|
|
"table": {
|
|
"headers": [
|
|
"Zdroj",
|
|
"Príklad",
|
|
"Natívny výsledok"
|
|
],
|
|
"rows": [
|
|
[
|
|
"Metadáta OCI",
|
|
"<code>Entrypoint</code>, <code>Cmd</code>, <code>User</code>",
|
|
"Proxmox VE ich importuje pri vytváraní CT"
|
|
],
|
|
[
|
|
"Docker Compose",
|
|
"<code>environment</code>, <code>volumes</code>, <code>devices</code>",
|
|
"Záznamy prostredia LXC, <code>mpN</code> a <code>devN</code>"
|
|
],
|
|
[
|
|
"Profil ProxMenux",
|
|
"GPU, kontrola stavu, prihlasovacie údaje",
|
|
"Otázky a overené úpravy"
|
|
],
|
|
[
|
|
"Používateľ",
|
|
"VMID, úložisko, sieť",
|
|
"Uložená konfigurácia inštalácie"
|
|
]
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "install",
|
|
"title": "Čo sa deje počas inštalácie",
|
|
"blocks": [
|
|
{
|
|
"steps": {
|
|
"items": [
|
|
{
|
|
"title": "Zistiť konkrétny obraz",
|
|
"body": "Vyhľadá sa obraz v registri, vyberie sa architektúra hostiteľa a zaznamená sa konkrétny digest, na ktorý odkazuje priebežne aktualizovaná značka."
|
|
},
|
|
{
|
|
"title": "Stiahnuť a overiť",
|
|
"body": "Skopeo stiahne obraz ako archív OCI. Pred vytvorením akýchkoľvek prostriedkov sa každá vrstva overí podľa jej digestu a rozbalí. Ak je stiahnutý súbor poškodený, sťahovanie sa ešte raz zopakuje, až potom sa inštalácia zastaví."
|
|
},
|
|
{
|
|
"title": "Vytvoriť súborový systém",
|
|
"body": "<code>pct create</code> vytvorí rootfs z archívu a zachová oficiálne metadáta procesu obrazu."
|
|
},
|
|
{
|
|
"title": "Pripojiť prostriedky",
|
|
"body": "Pripoja sa deklarované zväzky a zariadenia a nastavia sa sieť, prostredie a bezpečnostné profily."
|
|
},
|
|
{
|
|
"title": "Konzola",
|
|
"body": "Výstup konzoly kontajnera sa uchováva na hostiteľovi. Konzola Proxmox VE otvorí shell, ak ho obraz obsahuje."
|
|
},
|
|
{
|
|
"title": "Overiť",
|
|
"body": "Pri prvom spustení sa čaká na pridelenie adresy a odpoveď služby. V prípade zlyhania sa inštalácia neoznačí za úspešnú."
|
|
},
|
|
{
|
|
"title": "Zaznamenať konfiguráciu",
|
|
"body": "Výsledná konfigurácia sa uloží do záznamu o inštalácii, ktorý sa používa pri aktualizáciách a opätovnom vytvorení kontajnera."
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "example",
|
|
"title": "Príklad: obraz s /config a /downloads",
|
|
"intro": "Bežná definícia Compose a konfigurácia Proxmox VE, ktorá z nej vznikne. Cesty očakávané aplikáciou sa nemenia.",
|
|
"blocks": [
|
|
{
|
|
"codeGrid": {
|
|
"items": [
|
|
{
|
|
"title": "Docker Compose",
|
|
"code": "image: lscr.io/linuxserver/example:latest\nenvironment:\n - PUID=1000\n - PGID=1000\nvolumes:\n - config:/config\n - /srv/downloads:/downloads\nports:\n - 8080:8080"
|
|
},
|
|
{
|
|
"title": "/etc/pve/lxc/VMID.conf (úryvok)",
|
|
"code": "entrypoint: /init\nmp0: local-lvm:vm-VMID-disk-1,mp=/config,backup=1,size=8G\nmp1: /srv/downloads,mp=/downloads\nnet0: name=eth0,bridge=vmbr0,ip=dhcp,type=veth\nlxc.environment.runtime: PUID=1000\nlxc.environment.runtime: PGID=1000"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"p": "<code>mp0</code> je druhý disk patriaci kontajneru, na zvolenom úložisku pomenovaný <code>vm-VMID-disk-N</code>. Pripája sa do <code>/config</code> a pri <code>backup=1</code> je súčasťou zálohy kontajnera. <code>mp1</code> nevytvára disk: pripája adresár hostiteľa <code>/srv/downloads</code> do <code>/downloads</code> v LXC. Port 8080 sa nemapuje: LXC má vlastnú adresu a služba odpovedá na nej."
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|